async def edit(guild_id, message, old_keyword, new_keyword): guild_data = data.get_guild_data(guild_id) guild_data["keywords"][new_keyword] = guild_data["keywords"].pop( old_keyword) await message.channel.send(embed=verbose.embeds.embed_successful_action("Keyword edited. ")) data.set_guild_data(guild_id, guild_data)
async def remove(guild_id, message, message_removal): guild_data = data.get_guild_data(guild_id) try: guild_data["keywords"].pop(message_removal) except KeyError: await message.channel.send(embed=verbose.embeds.embed_warning_message("That keyword does not exist.")) else: await message.channel.send(embed=verbose.embeds.embed_successful_action("Keyword removed. ")) data.set_guild_data(guild_id, guild_data)
async def add(guild_id, message, keyword, value): guild_data = data.get_guild_data(guild_id) if value == "": await message.channel.send(embed=verbose.embeds.embed_warning_message("No value specified. ")) else: if keyword in guild_data["keywords"]: guild_data["keywords"][keyword].append(value) else: guild_data["keywords"][keyword] = [value] await message.channel.send(embed=verbose.embeds.embed_successful_action("Keyword added. ")) data.set_guild_data(guild_id, guild_data)
async def remove_flashcard_set(message): if not message.author.guild_permissions.administrator: await message.channel.send(embed=verbose.embeds.embed_warning_message("Sorry, you must be an administrator in this server to use that command.")) return guild_id = str(message.guild.id) name_of_flashcard_set_to_remove = message.content.split()[3] flashcard_sets = data.get_guild_data(guild_id)["flashcard_sets"] if name_of_flashcard_set_to_remove not in flashcard_sets.keys(): await message.channel.send(embed=verbose.embeds.embed_sorry_message("That flashcard set does not exist. Please check spelling and try again.")) return guild_data = data.get_guild_data(guild_id) guild_data["flashcard_sets"].pop(name_of_flashcard_set_to_remove) data.set_guild_data(guild_id, guild_data) await message.channel.send(embed=verbose.embeds.embed_successful_action(f"Flashcard set `{name_of_flashcard_set_to_remove}` deleted."))
async def end_flashcard_creation(message): guild_id = str(message.guild.id) if not flashcard_data[guild_id]["flashcard_creation_in_progress"]: await message.channel.send(embed=verbose.embeds.embed_warning_message("You cannot end creation if no creation has started.")) if message.author != flashcard_data[guild_id]["user"]: await message.channel.send(embed=verbose.embeds.embed_sorry_message("Only the flashcard set creator can end creation.")) return flashcard_set_name = flashcard_data[guild_id]["current_flashcard_set_name"] guild_data = data.get_guild_data(guild_id) guild_data["flashcard_sets"][flashcard_set_name] = flashcard_data[guild_id]["current_flashcard_set"].copy() data.set_guild_data(guild_id, guild_data) await message.channel.send(embed=verbose.embeds.embed_successful_action(f"Your flashcard set `{flashcard_set_name}` has been saved.")) # reset guild flashcard data flashcard_data[guild_id] = DEFAULT_GUILD_FLASHCARD_DATA.copy()
async def save_queue(message): """ save current queue as a preset with a name of the user's choice """ guild_id = str(message.guild.id) if len(guild_vc_data[guild_id]["guild_queue"]) < 1: await message.channel.send(embed=verbose.embeds.embed_sorry_message( "Your current queue is empty.")) return queue_to_save = [ song_to_dict(song) for song in guild_vc_data[guild_id]["guild_queue"] ] queue_name = " ".join(message.content.split(" ")[3:]) guild_data = data.get_guild_data(guild_id) guild_data["saved_queues"][queue_name] = queue_to_save data.set_guild_data(guild_id, guild_data) await message.channel.send(embed=verbose.embeds.embed_successful_action( f"Saved current queue preset as `{queue_name}`"))
async def edit_flashcard_set(message): guild_id = str(message.guild.id) name_of_flashcard_set_to_edit = message.content.split()[3] flashcard_sets = data.get_guild_data(guild_id)["flashcard_sets"] if name_of_flashcard_set_to_edit not in flashcard_sets.keys(): await message.channel.send(embed=verbose.embeds.embed_sorry_message("That flashcard set does not exist. Please check spelling and try again.")) return index_to_edit = int(message.content.split()[4]) - 1 new_front, _, new_back = message.content.split('"')[1:4] edited_flashcard_set = flashcard_sets[name_of_flashcard_set_to_edit] flashcard_front_to_replace = list(flashcard_sets[name_of_flashcard_set_to_edit])[index_to_edit] edited_flashcard_set[new_front] = edited_flashcard_set.pop(flashcard_front_to_replace) edited_flashcard_set[new_front] = new_back guild_data = data.get_guild_data(guild_id) guild_data["flashcard_sets"][name_of_flashcard_set_to_edit] = edited_flashcard_set data.set_guild_data(guild_id, guild_data) message.channel.send(embed=verbose.embeds.embed_successful_action("Flashcard set edited."))