From 7b2c0e5b5ce5ec1fe4de74c802c029ee64db6fe1 Mon Sep 17 00:00:00 2001 From: ChrisChrome Date: Mon, 2 Oct 2023 18:12:59 -0600 Subject: [PATCH] add 90 day flag --- index.js | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/index.js b/index.js index 2a902e1..30dfe3b 100644 --- a/index.js +++ b/index.js @@ -166,29 +166,50 @@ const generateExtensionListEmbed = async () => { let uniqueExtensions = [...new Set(extensions.map(extension => extension.user.extension))]; // Construct SQL query to check all unique extensions at the same time - const rows = await conn.query(` + const row30 = await conn.query(` SELECT cid_num, MAX(eventtime) FROM cel WHERE cid_num IN (${uniqueExtensions.join(",")}) AND eventtime >= DATE_SUB(CURDATE(), INTERVAL 30 DAY) GROUP BY cid_num + `); + const row90 = await conn.query(` + SELECT cid_num, MAX(eventtime) + FROM cel + WHERE cid_num IN (${uniqueExtensions.join(",")}) + AND eventtime >= DATE_SUB(CURDATE(), INTERVAL 90 DAY) + GROUP BY cid_num `); // turn rows into an array of extension numbers - let active = rows.map(row => row.cid_num); + let active30 = row30.map(row => row.cid_num); + let active90 = row90.map(row => row.cid_num); + + // Generate inactiveFlag object + let inactiveFlag = {}; + uniqueExtensions.forEach((ext) => { + if (active30.includes(ext)) { + inactiveFlag[ext] = ""; + } else if (active90.includes(ext)) { + inactiveFlag[ext] = "*"; + } else { + inactiveFlag[ext] = "**"; + } + }); extensions.forEach((extension) => { extensionList[extension.user.extension] = extension.user.name; }); + let extensionList1 = ""; for (let key in extensionList) { - extensionList1 += `\`${key}${active.includes(key) ? "" : "*"}\`: ${extensionList[key]}\n`; + extensionList1 += `\`${key}${inactiveFlag[key]}\`: ${extensionList[key]}\n`; } res = { "title": "Extension List", "color": 0x00ff00, - "description": `${extensions.length} extensions\n\`* = inactive\``, + "description": `${extensions.length} extensions\n\`* = inactive for 30 days\`\n\`** = inactive for 90 days\``, "fields": [{ "name": "Extensions", "value": `${extensionList1}`