diff --git a/src/memes.py b/src/memes.py index 1ec86ec..e0413b0 100644 --- a/src/memes.py +++ b/src/memes.py @@ -197,6 +197,18 @@ def getRandomMeme(): recentMemes.insertMeme(choice) return choice +# Build an underscored name from a string +def nameBuilder(command): + uploaded_file_name = "" + for word in command: + uploaded_file_name += word + "_" + + # remove the last _ from the name + uploaded_file_name = uploaded_file_name.rstrip(uploaded_file_name[-1]) + + # append the file extension + return uploaded_file_name + ############################################################################### # Calldict methods @@ -282,6 +294,17 @@ async def uploadMeme(command, message, client): file_names = [] for file in message.attachments: + # if we want to override the name + uploaded_file_name = file.filename + if len(command) > 1: + uploaded_file_name = nameBuilder(command[1:]) + # add the extension + name, ext = os.path.splitext(file.filename) + uploaded_file_name += ext + + print("File name is (" + uploaded_file_name + ")") + + # no files of the same name if file.filename in all_memes: return "File with name '" + file.filename + "' already exists!" @@ -298,6 +321,7 @@ async def uploadMeme(command, message, client): client.remove_object(bucket_name=S3_BUCKET, object_name=file.filename) + return "That meme is already in the cache (it's called " + memes_to_md5[result.etag] + ")" os.remove("/tmp/" + file.filename)