async function sendImageEmbed(message) { const filename = `${message.author.username}-${message.createdTimestamp}.png`; // Use the author's username in the filename let embed = new EmbedBuilder() .setFooter({ text: message.author.tag, iconUrl: message.author.avatarURL() }) .addFields({ name: 'Žadatel', value: '<@' + message.author.id + '>', inline: true }) .addFields({ name: 'Odkaz na zprávu', value: '[Odkaz](' + message.url + ')', inline: true }) .addFields({ name: 'Timestamp', value: '' }) .setColor(14680086); try { const imageFromDb = await Image.findOne({ where: { messageId: message.id } }); if (imageFromDb) { //const imageBuffer = Buffer.from(imageFromDb.image.substring(22), 'base64'); const imageBuffer = Buffer.from(imageFromDb.image, 'base64'); fs.writeFile('./images/' + filename, imageBuffer, (err) => { if (err) { console.error(err); } else { console.log('Image saved successfully'); } }); const file = new AttachmentBuilder('./images/' + filename); embed.setImage('attachment://' + filename) const roleArchiveChannel = client.channels.cache.get(config.Channels.ROLE_REQUEST_ARCHIVE_CHANNEL) const row = new ActionRowBuilder().addComponents( new SelectMenuBuilder() .setCustomId('roleRequest' + message.id) .setPlaceholder('Vyber roli') .addOptions( { label: "NEPLATNÝ POŽADAVEK", description: 'Něco je špatně? Klikni sem', value: 'roleRequest' + '661597952568983575', }, { label: "Aktuální Season", description: 'Za dosažení 100 lvl v aktuální Sezóně.', value: 'roleRequest' + '1086028543978377318', }, { label: "Pirate Legend", description: 'Screenshot s titulem Pirate Legend v inventáři', value: 'roleRequest' + '438366221310623745', }, { label: "A Pirate's Life", description: "Screenshot s Commendation A Pirate's Life For Me", value: 'roleRequest' + '892855091550376026', }, { label: "Athena's Fortune Guardian", description: "Screenshot reputace Athena's Fortune na 10. levelu", value: 'roleRequest' + '480738231294361600', }, { label: "Champion of the Flame", description: "Screenshot reputace Reaper's Bones na 75. levelu", value: 'roleRequest' + '716389313268416602', }, { label: "Legendary Pirate Legend", description: "Screenshot s reputací Gold Hoarders, Merchant Aliance a Order of Souls na 75. levelu", value: 'roleRequest' + '716389233086169218', }, { label: "Seeker of Grand Adventure", description: "Screenshot s Commendation Seeker of the Grand Adventure", value: 'roleRequest' + '716388934711509062', }, { label: "Arena Master", description: "Screenshot reputace Sea Dogs na 50. levelu", value: 'roleRequest' + '622718987578638336', }, { label: "Athena's Fortune Champion", description: "Screenshot reputace Athena’s Fortune na 20. levelu", value: 'roleRequest' + '716389205768536135', }, { label: "Athena's Fortune Vanguard", description: "Screenshot reputace Athena’s Fortune na 30. levelu", value: 'roleRequest' + '967810534604935218', }, { label: "Triumphant Sea Dog", description: "Screenshot s titulem Triumphant Sea Dog v inventáři", value: 'roleRequest' + '716389162856611920', }, { label: "Reaper's Servant", description: "Screenshot reputace Reaper's Bones s 100% Commendations", value: 'roleRequest' + '771503953325588480', }, { label: "Skull Lunatic", description: "Screenshot reputace Order of Souls s 100% Commendations", value: 'roleRequest' + '716389365143699476', }, { label: "Established Merchant", description: "Screenshot reputace Merchant Alliance s 100% Commendations", value: 'roleRequest' + '716389388984254557', }, { label: "Notorious Gold Hoarder", description: "Screenshot reputace Gold Hoarders s 100% Commendations", value: 'roleRequest' + '716389337943638137', }, { label: "Legendary Sea Dog", description: "Screenshot s Commendation Legendary Sea Dog", value: 'roleRequest' + '731101667831054397', }, { label: "Legendary Hunter", description: "Screenshot s titulem Legendary Hunter v inventáři", value: 'roleRequest' + '629719665429446656', }, { label: "Shrouded Ghost Hunter", description: "Screenshot s titulem Hunter of the Shrouded Ghost v inventáři", value: 'roleRequest' + '658284704012828728', }, { label: "#SoTShot", description: "Screenshot Golden Hour Sails v Shipwright Chest", value: 'roleRequest' + '779444846880489515', }, { label: "Guardian of the Sea", description: "Screenshot reputace Guardians of Athena's Fortune na 100. levelu", value: 'roleRequest' + '1050812383980953651', }, { label: "Warrior of the Flame", description: "Screenshot reputace Servants of the Flame na 100. levelu", value: 'roleRequest' + '1050811636346273953', } ), ); console.log('[ROLE-REQUEST] Uživatel ' + message.author.tag + ' si požádal o roli') await roleArchiveChannel.send({ embeds: [embed], components: [row], files: [file] }) .then(() => { // Delete the image file after sending fs.unlink(`./images/${filename}`, (err) => { console.log('Deleted image') if (err) console.log(err); }); }) .catch((err) => { console.log(err); }) } } catch (error) { console.error('Error sending image from database:', error); } }