migrating to mongodb, adding blog, adding project links and tracked and much more
This commit is contained in:
36
links/index.js
Normal file
36
links/index.js
Normal file
@@ -0,0 +1,36 @@
|
||||
const express = require("express");
|
||||
const { MongoClient } = require("mongodb");
|
||||
require("dotenv").config()
|
||||
|
||||
const app = express();
|
||||
app.use(express.json());
|
||||
app.use(express.urlencoded({ extended: false }));
|
||||
|
||||
const client = new MongoClient(process.env.DATABASE);
|
||||
|
||||
app.get("/:id", async (req,res)=>{
|
||||
const id = req.params.id
|
||||
|
||||
await client.connect()
|
||||
const db = await client.db("ngn13")
|
||||
const col = await db.collection("projects")
|
||||
const projects = await col.find().toArray()
|
||||
|
||||
console.log(projects)
|
||||
|
||||
for(let i=0; i<projects.length;i++){
|
||||
if(projects[i]["name"].toLowerCase().replaceAll(" ", "")===id){
|
||||
res.redirect(projects[i]["url"])
|
||||
await col.updateOne({name:projects[i]["name"]}, {"$set": {"click": projects[i]["click"]+1}})
|
||||
return await client.close()
|
||||
|
||||
}
|
||||
}
|
||||
await client.close()
|
||||
return res.redirect("/projects")
|
||||
})
|
||||
|
||||
export default {
|
||||
path: "/l",
|
||||
handler: app,
|
||||
};
|
Reference in New Issue
Block a user