Fixes and tickets

This commit is contained in:
Thomas Demirdjian
2025-10-28 15:43:18 +01:00
parent 2599a25d77
commit d1be3c19a2
31 changed files with 6663 additions and 795 deletions
+38 -1
View File
@@ -1,7 +1,44 @@
const admin = require("firebase-admin");
const { onDocumentDeleted } = require("firebase-functions/firestore");
const {
onDocumentDeleted,
onDocumentCreated,
} = require("firebase-functions/firestore");
const { refList } = require("../index");
const { deleteFolder } = require("../helpers/firebase");
const { Resend } = require("resend");
const { welcomeTemplate } = require("../helpers/email");
const { RESEND_API_KEY } = require("../config/keys");
const resendClient = new Resend(RESEND_API_KEY);
const WELCOME_EMAIL_FROM =
process.env.RESEND_FROM_EMAIL || "MusicLand <musicland@minuit.app>";
const WELCOME_EMAIL_SUBJECT = "Bienvenue sur MusicLand";
exports.onUserCreated = onDocumentCreated("users/{userID}", async (event) => {
try {
const { email = "", firstName = "", lastName = "" } = event?.data?.data();
if (email) {
if (!resendClient) {
console.warn("Resend API key not configured; skipping welcome email.");
return;
}
try {
await resendClient.emails.send({
from: WELCOME_EMAIL_FROM,
to: [email],
subject: WELCOME_EMAIL_SUBJECT,
html: welcomeTemplate({ firstName, lastName }),
});
} catch (error) {
console.log("Failed to send welcome email:", error);
}
} else {
throw new Error("User created with empty email");
}
} catch (e) {
console.log(e);
}
});
exports.onUserDelete = onDocumentDeleted("users/{userID}", async (event) => {
try {