const { generateEmailTransporter } = require("./mail"); const db = require("./database"); // Helper function to send email async function sendVerificationEmail(email, verificationCode) { const transporter = generateEmailTransporter(); // Send the email with Zoho await transporter.sendMail({ from: "campusplug@zohomailcloud.ca", to: email, subject: "Campus Plug: Signup Verification Code", text: `Your verification code is: ${verificationCode}. This code will expire in 15 minutes.`, html: `
Your verification code is: ${verificationCode}
This code will expire in 15 minutes.
`, }); console.log(`Verification code sent to ${email}`); } // Clean up expired verification codes (run this periodically) // function cleanupExpiredCodes() { // db.query( // "DELETE FROM AuthVerification WHERE Date < DATE_SUB(NOW(), INTERVAL 15 MINUTE) AND Authenticated = 0", // (err, result) => { // if (err) { // console.error("Error cleaning up expired codes:", err); // } else { // console.log(`Cleaned up ${result} expired verification codes`); // } // } // ); // } const checkDatabaseConnection = async (db) => { try { const connection = await db.getConnection(); //If no error, release the connection console.log("Connect to database successfully!"); connection.release(); } catch (error) { console.log("Cannot connect to database: ", error.sqlMessage); } }; module.exports = { sendVerificationEmail, // cleanupExpiredCodes, checkDatabaseConnection, };