fix(rmenus): Update msg data from origin message.
This commit is contained in:
@@ -126,6 +126,7 @@ async def rolemenu_ctxcmd(interaction: discord.Interaction, message: discord.Mes
|
|||||||
else:
|
else:
|
||||||
menu = await RoleMenu.fetch(self.bot, menuid)
|
menu = await RoleMenu.fetch(self.bot, menuid)
|
||||||
menu._message = message
|
menu._message = message
|
||||||
|
await menu.update_raw()
|
||||||
|
|
||||||
# Open the editor
|
# Open the editor
|
||||||
editor = MenuEditor(self.bot, menu, callerid=interaction.user.id)
|
editor = MenuEditor(self.bot, menu, callerid=interaction.user.id)
|
||||||
@@ -895,6 +896,7 @@ class RoleMenuCog(LionCog):
|
|||||||
)).format(name=name)
|
)).format(name=name)
|
||||||
)
|
)
|
||||||
await target.fetch_message()
|
await target.fetch_message()
|
||||||
|
await target.update_raw()
|
||||||
|
|
||||||
# Parse provided options
|
# Parse provided options
|
||||||
reposting = channel is not None
|
reposting = channel is not None
|
||||||
|
|||||||
@@ -192,6 +192,20 @@ class RoleMenu:
|
|||||||
self._message = _message
|
self._message = _message
|
||||||
return self._message
|
return self._message
|
||||||
|
|
||||||
|
async def update_raw(self):
|
||||||
|
"""
|
||||||
|
Updates the saved raw message data for non-owned menus.
|
||||||
|
"""
|
||||||
|
message = await self.fetch_message()
|
||||||
|
if not self.managed and message is not None:
|
||||||
|
message_data = {}
|
||||||
|
message_data['content'] = message.content
|
||||||
|
if message.embeds:
|
||||||
|
message_data['embed'] = message.embeds[0].to_dict()
|
||||||
|
rawmessage = json.dumps(message_data)
|
||||||
|
if rawmessage != self.data.rawmessage:
|
||||||
|
await self.data.update(rawmessage=rawmessage)
|
||||||
|
|
||||||
def emoji_map(self):
|
def emoji_map(self):
|
||||||
emoji_map = {}
|
emoji_map = {}
|
||||||
for mrole in self.roles:
|
for mrole in self.roles:
|
||||||
|
|||||||
@@ -1144,3 +1144,4 @@ class MenuEditor(MessageUI):
|
|||||||
self.pagen = self.pagen % self.page_count
|
self.pagen = self.pagen % self.page_count
|
||||||
self.page_block = blocks[self.pagen]
|
self.page_block = blocks[self.pagen]
|
||||||
await self.menu.fetch_message()
|
await self.menu.fetch_message()
|
||||||
|
await self.menu.update_raw()
|
||||||
|
|||||||
Reference in New Issue
Block a user