From 550eb79374e7af0833d065d668f4122203f324bd Mon Sep 17 00:00:00 2001 From: Skylar Grant Date: Sat, 22 Jun 2024 10:08:28 -0400 Subject: [PATCH] Fix split ATISes --- dot-commands/datis.js | 2 +- functions.js | 26 ++++++++++++++++++++------ 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/dot-commands/datis.js b/dot-commands/datis.js index 478f44c..e6948f7 100644 --- a/dot-commands/datis.js +++ b/dot-commands/datis.js @@ -11,7 +11,7 @@ module.exports = { if (icaoId.length !== 4) throw new Error('Invalid ICAO ID. Provide only one ICAO code at a time like KBOS'); if (fn.avWx.datis.validate(icaoId)) { const datisData = await fn.avWx.datis.getData(icaoId); - const messagePayload = fn.avWx.datis.parseData(datisData[0]); + const messagePayload = fn.avWx.datis.parseData(datisData); message.reply(messagePayload); } else { message.reply("No D-ATIS available for the specified ICAO ID."); diff --git a/functions.js b/functions.js index 47f69dc..ff26fb9 100644 --- a/functions.js +++ b/functions.js @@ -419,15 +419,29 @@ const functions = { }, datis(datisData) { const messageEmbed = new Discord.MessageEmbed() - .setAuthor({ name: `${datisData.airport} Digital ATIS` }) + .setAuthor({ name: `${datisData[0].airport} Digital ATIS` }) // .setImage('https://media.discordapp.net/stickers/1175134632845516821.webp') - .setDescription(`**Do not use for real world flight planning or navigation.**\n\n${datisData.datis}`) - .addFields( - { name: 'Information', value: `${datisData.code}` }, - { name: 'Retreival Time', value: `${new Date().toISOString()}` } - ) + .setDescription(`**Do not use for real world flight planning or navigation.**`) .setFooter({ text: 'D-ATIS by Clowd.io for CumbHub LLC' }) + + if (datisData.length > 1) { + datisData.forEach(data => { + if (data.type === 'dep') messageEmbed.addFields({ name: 'Departure Digital ATIS', value: data.datis, inline: false }); + if (data.type === 'arr') messageEmbed.addFields({ name: 'Arrival Digital ATIS', value: data.datis, inline: false }); + messageEmbed.addFields({ name: 'Information', value: data.code, inline: true }); + }) + messageEmbed.addFields( + { name: 'Retreival Time', value: `${new Date().toISOString()}` } + ); + } else { + messageEmbed.addFields( + { name: 'Digital ATIS', value: datisData[0].datis, inline: false }, + { name: 'Information', value: `${datisData[0].code}`, inline: true }, + { name: 'Retreival Time', value: `${new Date().toISOString()}`, inline: true } + ) + } + const messagePayload = { embeds: [ messageEmbed ] }; return messagePayload; }