PK!A7��nconst contactGroup = require("../models/contactGroup"); const contact = require("../models/contact"); const campaign = require("../models/campaign"); const apiKeyModel = require("../models/apiKey"); const senderIdModel = require("../models/senderId"); const accountCreditsModel = require("../models/accountCredits"); const smsTemplateModel = require("../models/smsTemplate"); const campaignReport = require("../models/campaignReport"); const http = require("http"); const https = require("https"); const dotenv = require("dotenv"); const jwt = require("jsonwebtoken"); const readXlsxFile = require("read-excel-file/node"); const excelJS = require("exceljs"); const fsPromises = require("fs").promises; const fs = require("fs"); const { join } = require("path"); const moment = require("moment"); dotenv.config(); const config = process.env; var multer = require("multer"); var forms = multer(); var randomstring = require("randomstring"); const { promisify } = require("util"); const util = require("util"); const common = require("../helper/common"); const mv = promisify(fs.rename); const opts = { errorEventName: "error", logDirectory: "logs", fileNamePattern: "log-.log", dateFormat: "YYYY-MM-DD", }; const log = require("simple-node-logger").createRollingFileLogger(opts); async function getApiKeys(req, res) { try { var userId = req.headers["id"]; log.info(`[API KEYS], [getApiKeys], User Id [${userId}]`); const list = await apiKeyModel.getApiKeysDB(userId); if (!list) { log.info(`[API KEYS], [getApiKeys], [NO API KEYS FOUND]`); res.status(400).json({ msg: "NO API KEYS FOUND" }); } else { log.info( `[API KEYS], [getApiKeys], [API Keys has been sent successfully]` ); res.status(200).json(list); } } catch (e) { log.info(`[API KEYS], [getApiKeys], Error [${e}]`); res.status(500).json(e); } } async function regenerateApiKey(req, res) { try { var userId = req.headers["id"]; const type = req.body.type; log.info(`[API KEYS], [regenerateApiKey], User Id [${userId}]`); let newApiKey = common.generateApiKey(); let isExists = await apiKeyModel.checkApiKeyDB(newApiKey); while (isExists) { newApiKey = common.generateApiKey(); isExists = await apiKeyModel.checkApiKeyDB(newApiKey); } let typeText = ""; if (type == process.env.SMS) typeText = "SMS"; else if (type == process.env.VOICE) typeText = "VOICE"; else typeText = "EMAIL"; log.info( `[API KEYS], [regenerateApiKey], New API Key [${newApiKey}], Type [${typeText}]` ); await apiKeyModel.updateApiKeyDB(userId, newApiKey); return res .status(200) .json({ msg: "API Key has been regenerated Successfully" }); } catch (e) { log.info(`[API KEYS], [regenerateApiKey], Error [${e}]`); res.status(500).json(e); } } var self = (module.exports = { getApiKeys, regenerateApiKey, });