def update_image_library(username): # A if "image_gallery" not in request.files: return "No user_file key in request.files" # B file = request.files["image_gallery"] print(file) # C. if file.filename == "": return "Please select a file" # D. if file and allowed_file(file.filename): file.filename = secure_filename(file.filename) output = upload_file_to_s3(file, app.config["S3_BUCKET"]) # Add image path to database Image.create(user_id=current_user.id, user_image_path=file.filename) flash('Profile photo updated') return redirect(url_for('users.show', username=username)) else: return render_template("home.html")
def load_demo_explorations(cls): """Initializes the demo explorations.""" for index, exploration in enumerate(feconf.DEMO_EXPLORATIONS): assert len(exploration) in [3, 4], ( 'Invalid format for demo exploration: %s' % exploration) yaml_filename = '%s.yaml' % exploration[0] yaml_file = utils.get_file_contents( os.path.join(feconf.SAMPLE_EXPLORATIONS_DIR, yaml_filename)) title = exploration[1] category = exploration[2] image_filename = exploration[3] if len(exploration) == 4 else None image_id = None if image_filename: with open(os.path.join( feconf.SAMPLE_IMAGES_DIR, image_filename)) as f: raw_image = f.read() image_id = Image.create(raw_image) exploration = cls.create_from_yaml( yaml_file=yaml_file, user=None, title=title, category=category, exploration_id=str(index), image_id=image_id) exploration.is_public = True exploration.put()
def create(): user = User.get_by_id(current_user.id) username = user.username file = request.files.get('upload_pic') if "upload_pic" not in request.files or file.filename == "": flash('Please select a picture for upload') if file and helpers.allowed_file(file.filename): file.filename = secure_filename(f"feed_{str(datetime.datetime.now())}_{file.filename}") output = helpers.upload_file_to_s3(file, Config.S3_BUCKET) Image.create(user_id=current_user.id, image_url=file.filename) return redirect(url_for('users.show', username=username)) else: return redirect(url_for('users.show', username=username))
def post(self): """Saves an image uploaded by a content creator.""" raw = self.request.get('image') if raw: image_id = Image.create(raw) self.response.write(json.dumps({'image_id': image_id})) else: raise self.InvalidInputException('No image supplied')
def create(): # check request.files object for a image key if "image_post" not in request.files: flash("No image key in request.files", "danger") return redirect(url_for('users.show', username=current_user.name)) # if key is in object, save it in a variable called file file = request.files["image_post"] # check if filename attribute on the object and if empty, means user submit empty form, so return error if file.filename == "": flash("Please select a file", "danger") return redirect(url_for('users.show', username=current_user.name)) # check that there is a file and that it has an allowed filetype if file and allowed_file(file.filename): file.filename = secure_filename(file.filename) output = upload_file_to_s3(file, app.config["S3_BUCKET"]) Image.create(image=file.filename, user=current_user.id) flash("Post successfully uploaded", "success") return redirect(url_for('users.show', username=current_user.name)) else: flash("Please try again", "danger") return redirect(url_for('users.show', username=current_user.name))
def upload_photo(id): if "user_file" not in request.files: flash("You didn't upload a file! Please try again.", "danger") file = request.files.get('user_file') if file: if file.filename == "": return "Please select a file with a valid name." if file and allowed_file(file.filename): file.filename = secure_filename( str(id) + "_" + file.filename + "_" + str(datetime.datetime.now())) output = upload_file_to_s3(file, app.config["S3_BUCKET"]) Image.create(image_path=output, user_id=id) flash("Your Post was created", "success") return redirect(url_for('users.show', id=id)) else: flash("Only .jpg, .jpeg, .png, or .gif formats are accepted.", "danger") return redirect("/") else: return redirect("/")
def create_upload_pic(): if "user_file" not in request.files: flash("No user_file key in request.files") return redirect(url_for('users.edit_profile_pic')) file = request.files["user_file"] if file.filename == "": return "Please select a file" if file and allowed_file(file.filename): file.filename = secure_filename(file.filename) image_url = upload_file_to_s3(file, S3_BUCKET) image = Image.create(image_path=file.filename, user_id=current_user.id) image.save() return redirect(url_for('users.show', username_id=current_user.id))
def create_picture(id): # get file from request file = request.files["img_file"] # if no file in request if not file: flash("Please choose a file.", 'danger') return render_template('images/new.html') # if file in request file.filename = secure_filename(file.filename) output = upload_file_to_s3(file) # if no image link get from upload function if not output: flash("Unable to upload file, please try agian", "danger") return render_template('images/new.html') # if img link return, means uploaod successful else: # get current_user user = User.get_or_none(User.id == id) image = Image.create(img_file_name = file.filename, user_id = user) # save profile image link in user class image.save() flash("Image uploaded successfully!", "success") return redirect(url_for('images.new', id=id))