Added backend and integration for FilterPage and CourseTable done

This commit is contained in:
Harshitha Shetty
2024-12-09 05:06:08 +05:30
parent 6b06b9722f
commit e22727eefd
16 changed files with 756 additions and 118 deletions

View File

@@ -1,25 +1,38 @@
const express = require("express");
const User = require("./models/User");
const mongoose = require("mongoose");
const bodyParser = require("body-parser");
const cors = require("cors");
require("dotenv").config();
const passport = require("passport");
const session = require("express-session");
const bodyParser = require("body-parser");
const bcrypt = require("bcryptjs");
const LocalStrategy = require("passport-local").Strategy;
const PasswordRouter = require("./routes/authRoutes");
const crypto = require("crypto");
const jwt = require("jsonwebtoken");
const path = require("path");
const User = require("./models/User");
const PasswordRouter = require("./routes/authRoutes");
const courseRoutes = require("./routes/courseRoutes");
const facultyRoutes = require("./routes/facultyRoutes");
const appointmentRoutes = require("./routes/appointmentRoutes");
// Existing Database Connection
const { connectdb } = require("./ConnectionDb");
connectdb();
// MongoDB Connection
mongoose
.connect(process.env.mongoURI)
.then(() => console.log("MongoDB connected"))
.catch((err) => console.error("MongoDB connection error:", err));
const app = express();
// Middleware
app.use(cors());
app.use(express.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(
session({
secret: "secret",
@@ -39,7 +52,7 @@ app.use(
})
);
// Passport configuration
// Passport Configuration
require("./config/passport");
passport.use(
@@ -76,7 +89,11 @@ passport.deserializeUser((id, done) => {
// Routes
app.use("/password", PasswordRouter);
app.use("/api/courses", courseRoutes);
app.use("/api/faculty", facultyRoutes);
app.use("/api/appointments", appointmentRoutes);
// OAuth Routes
app.get(
"/auth/google",
passport.authenticate("google", { scope: ["profile", "email"] })
@@ -86,7 +103,7 @@ app.get(
"/auth/google/callback",
passport.authenticate("google", { failureRedirect: "/" }),
function (req, res) {
res.redirect("http://localhost:3000/Welcom");
res.redirect("http://localhost:3000/Welcom");
}
);
@@ -174,15 +191,17 @@ app.get("/api/user/profile", async (req, res) => {
}
});
// Serve static files
// Serve Static Files
app.use(express.static(path.join(__dirname, "../client/build")));
// Catch-all route to serve React app
// Catch-All Route
app.get("*", (req, res) =>
res.sendFile(path.join(__dirname, "../client/build/index.html"))
);
const Port = 8080;
// Start Server
const Port = process.env.PORT || 8080;
app.listen(Port, () => {
console.log(`Server is Running at port ${Port}`);
});