diff --git a/.firebaserc b/.firebaserc index b0748b8..94ff759 100644 --- a/.firebaserc +++ b/.firebaserc @@ -1,7 +1,8 @@ { "projects": { - "default": "doubtless-bd798", - "staging": "doubtless-bd798" + "default": "doubtlesstest", + "staging": "doubtless-bd798", + "y": "doubtlesstest" }, "targets": {}, "etags": {} diff --git a/firebase.json b/firebase.json index 08be899..8bac8a8 100644 --- a/firebase.json +++ b/firebase.json @@ -1,4 +1,3 @@ - { "functions": [ { @@ -13,10 +12,10 @@ } ], "runtime": "nodejs14", - "triggers": [ - { - "name": "myFunction", - "type": "http" - } - ] + "triggers": [ + { + "name": "myFunction", + "type": "http" + } + ] } diff --git a/functions/.gitignore b/functions/.gitignore new file mode 100644 index 0000000..40b878d --- /dev/null +++ b/functions/.gitignore @@ -0,0 +1 @@ +node_modules/ \ No newline at end of file diff --git a/functions/controllers/topBanners.js b/functions/controllers/topBanners.js new file mode 100644 index 0000000..46512f5 --- /dev/null +++ b/functions/controllers/topBanners.js @@ -0,0 +1,30 @@ +const { v4: uuidv4 } = require('uuid'); + +const topBanner = async (req, res) => { + try { + const { name, email, college } = req.body; + + const id = uuidv4(); + + const response = { + type: 'TOP_BANNER', + data: [ + { + id: id, + image_url: 'url1', + redirection: { + type: 'URL', + url: 'url1', + }, + }, + ], + }; + + res.json(response); + } catch (error) { + console.error('Error:', error); + res.status(500).json({ error: 'Internal Server Error' }); + } +}; + +module.exports = { topBanner }; diff --git a/functions/index.js b/functions/index.js index 3a99036..775279b 100644 --- a/functions/index.js +++ b/functions/index.js @@ -3,23 +3,29 @@ const functions = require("firebase-functions"); const { onRequest } = require("firebase-functions/v2/https"); const admin = require("firebase-admin"); const bodyParser = require("body-parser"); - +const serviceAccount = require("./adminSDK.json"); admin.initializeApp({ - // credential: admin.credential.cert(serviceAccount), - apiKey: process.env.FIREBASE_API_KEY, - authDomain: process.env.FIREBASE_AUTH_DOMAIN, - projectId: process.env.FIREBASE_PROJECT_ID, - storageBucket: process.env.FIREBASE_BUCKET, - messagingSenderId: process.env.FIREBASE_, - appId: process.env.FIREBASE_APP_ID, - measurementId: process.env.FIREBASE_MEASURMENT_ID, - databaseURL: process.env.FIREBASE_DB_URL + credential: admin.credential.cert(serviceAccount), + databaseURL: process.env.DATABASE_URL, }); +// admin.initializeApp({ +// // credential: admin.credential.cert(serviceAccount), +// apiKey: process.env.FIREBASE_API_KEY, +// authDomain: process.env.FIREBASE_AUTH_DOMAIN, +// projectId: process.env.FIREBASE_PROJECT_ID, +// storageBucket: process.env.FIREBASE_BUCKET, +// messagingSenderId: process.env.FIREBASE_, +// appId: process.env.FIREBASE_APP_ID, +// measurementId: process.env.FIREBASE_MEASURMENT_ID, +// databaseURL: process.env.FIREBASE_DB_URL +// }); + const doubtRoutes = require("./routes/doubt-route"); const postAnswer = require("./routes/post_answer"); const searchAnswer = require("./routes/search_route"); +const topBanner = require("./routes/top-banner"); const express = require("express"); const cors = require("cors"); @@ -31,6 +37,8 @@ app.use(bodyParser.text()); app.use("/api/doubts", doubtRoutes.routes); app.use("/api/search", searchAnswer.routes); app.use("/api/doubts/answer", postAnswer.routes); +app.use("/api/banner",topBanner.routes); + app.get("/", (req, res) => { return res.status(200).send("Welcome to Doubtless"); }); diff --git a/functions/routes/top-banner.js b/functions/routes/top-banner.js new file mode 100644 index 0000000..0537a56 --- /dev/null +++ b/functions/routes/top-banner.js @@ -0,0 +1,10 @@ +const express = require('express'); +const banner = require('../controllers/topBanners'); + +const router = express.Router(); + +router.post('/', banner.topBanner); + +module.exports = { + routes : router +}