fix(post): allow editing messages that aren't saved
This commit is contained in:
parent
05bd84b1f9
commit
19b7b4a5ee
2 changed files with 17 additions and 22 deletions
|
@ -14,23 +14,21 @@ export const EditCmd = postCmd({
|
||||||
},
|
},
|
||||||
|
|
||||||
async run({ message: msg, args, pluginData }) {
|
async run({ message: msg, args, pluginData }) {
|
||||||
const savedMessage = await pluginData.state.savedMessages.find(args.message.messageId);
|
const targetMessage = await args.message.channel.messages.fetch(args.message.messageId);
|
||||||
if (!savedMessage) {
|
console.log({ targetMessage });
|
||||||
|
if (!targetMessage) {
|
||||||
sendErrorMessage(pluginData, msg.channel, "Unknown message");
|
sendErrorMessage(pluginData, msg.channel, "Unknown message");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (savedMessage.user_id !== pluginData.client.user!.id) {
|
if (targetMessage.author.id !== pluginData.client.user!.id) {
|
||||||
sendErrorMessage(pluginData, msg.channel, "Message wasn't posted by me");
|
sendErrorMessage(pluginData, msg.channel, "Message wasn't posted by me");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
(pluginData.guild.channels.cache.get(savedMessage.channel_id as Snowflake) as TextChannel).messages.edit(
|
targetMessage.channel.messages.edit(targetMessage.id, {
|
||||||
savedMessage.id as Snowflake,
|
content: formatContent(args.content),
|
||||||
{
|
});
|
||||||
content: formatContent(args.content),
|
|
||||||
},
|
|
||||||
);
|
|
||||||
sendSuccessMessage(pluginData, msg.channel, "Message edited");
|
sendSuccessMessage(pluginData, msg.channel, "Message edited");
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
|
@ -23,12 +23,6 @@ export const EditEmbedCmd = postCmd({
|
||||||
},
|
},
|
||||||
|
|
||||||
async run({ message: msg, args, pluginData }) {
|
async run({ message: msg, args, pluginData }) {
|
||||||
const savedMessage = await pluginData.state.savedMessages.find(args.message.messageId);
|
|
||||||
if (!savedMessage) {
|
|
||||||
sendErrorMessage(pluginData, msg.channel, "Unknown message");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
const content = args.content || args.maincontent;
|
const content = args.content || args.maincontent;
|
||||||
|
|
||||||
let color: number | null = null;
|
let color: number | null = null;
|
||||||
|
@ -42,17 +36,20 @@ export const EditEmbedCmd = postCmd({
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const embed: MessageEmbed = savedMessage.data.embeds![0] as MessageEmbed;
|
const targetMessage = await args.message.channel.messages.fetch(args.message.messageId);
|
||||||
|
if (!targetMessage) {
|
||||||
|
sendErrorMessage(pluginData, msg.channel, "Unknown message");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const embed = (targetMessage.embeds![0] ?? { fields: [] }) as MessageEmbed;
|
||||||
if (args.title) embed.title = args.title;
|
if (args.title) embed.title = args.title;
|
||||||
if (content) embed.description = formatContent(content);
|
if (content) embed.description = formatContent(content);
|
||||||
if (color) embed.color = color;
|
if (color) embed.color = color;
|
||||||
|
|
||||||
(pluginData.guild.channels.cache.get(savedMessage.channel_id as Snowflake) as TextChannel).messages.edit(
|
args.message.channel.messages.edit(targetMessage.id, {
|
||||||
savedMessage.id as Snowflake,
|
embeds: [embed],
|
||||||
{
|
});
|
||||||
embeds: [embed],
|
|
||||||
},
|
|
||||||
);
|
|
||||||
await sendSuccessMessage(pluginData, msg.channel, "Embed edited");
|
await sendSuccessMessage(pluginData, msg.channel, "Embed edited");
|
||||||
|
|
||||||
if (args.content) {
|
if (args.content) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue