diff --git a/src/routes/webhook.js b/src/routes/webhook.js index ae76cb3..4828c01 100644 --- a/src/routes/webhook.js +++ b/src/routes/webhook.js @@ -31,9 +31,11 @@ export const webhookRoutes = (fastify, _, done) => { // Check if the request contains the 'hub.challenge' query parameter if (req.query["hub.challenge"] && req.query["hub.verify_token"] === "FQNI4Suzih" && req.query["hub.topic"].startsWith("https://www.youtube.com/xml/feeds/videos.xml?channel_id=")) { const channel = req.query["hub.topic"].replace("https://www.youtube.com/xml/feeds/videos.xml?channel_id=", ""); + const [user] = await db.select(users).where(eq(users.channel_id, channel)); + if(!user) return reply.code(400).send("Invalid user"); await db.update(sites).set({ pubsub_expiry: new Date() + parseInt(req.query["hub.lease_seconds"] || 172800) - }).leftJoin(users, eq(sites.user_id, users.id)).where(eq(users.channel_id, channel)); + }).where(eq(sites.user_id, user.id)); // Respond with the challenge to verify the subscription console.log(req.query) console.log("verifying...", req.query["hub.challenge"]);