Website : rimsha.abasa.com
backdoor
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
var
/
www
/
ah7-backend
/
src
/
Filename :
app.js
back
Copy
import express from "express"; import passport from "passport"; import configurePassport from "../src/config/passport.config.js"; import authRoutes from "../src/routes/auth.routes.js"; import exerciseRoutes from "../src/routes/exercise.routes.js"; import exerciseItemRoutes from '../src/routes/exerciseItem.routes.js' import workoutRoutes from "../src/routes/workout.routes.js"; import exerciseLog from "../src/routes/logHistory.routes.js"; import workoutSchedule from "../src/routes/schedule.route.js"; import sendLogs from '../src/routes/sendLogs.route.js' import foodRoutes from '../src/routes/food.routes.js' import foodLogRoutes from './routes/foodLog.routes.js' import storeJsonDataToMongodb from "../src/utils/StoreData.js"; import jsonData from "../src/data/data.json" with { type: "json" }; import foodJsonData from "../src/data/foodData.json" with { type: "json" }; import storeFoodJsonDataToMongodb from "../src/utils/StoreFoodData.js"; import { scheduleWorkoutNotifier } from "../src/services/scheduleNotifierService.js"; const app = express(); scheduleWorkoutNotifier() // Middleware app.use(express.json()); // JSON body parsing app.use(passport.initialize()); // Passport initialization // Passport configure configurePassport(); // Static folder for uploads app.use("/uploads", express.static("public/uploads")); // Routes app.use("/auth", authRoutes); // Auth routes app.use("/exercise", exerciseRoutes); // Exercise routes app.use("/exercise-item", exerciseItemRoutes); app.use("/workout", workoutRoutes); // Workout routes app.use('/log-history', exerciseLog ) //log routes app.use('/schedule', workoutSchedule) // schedule routes app.use('/send-logs', sendLogs) // send logs routes app.use('/foods', foodRoutes) app.use('/food-log', foodLogRoutes) // food log routes app.get("", (req, res) => { res.send( `<h1>Welcome to AH7</h1>` ) }) // Endpoint for storing data (use this once to populate the database) app.post("/api/storeData", async (req, res) => { try { await storeJsonDataToMongodb(jsonData); res.status(200).json({ message: "Data and images have been successfully stored in MongoDB and S3." }); } catch (error) { console.error("Error in /api/storeData:", error); res.status(500).json({ message: "Error storing data in MongoDB", error }); } }); app.post("/api/storeFoodData", async (req, res) => { try { await storeFoodJsonDataToMongodb(foodJsonData); res.status(200).json({ message: "Food data and images have been successfully stored in MongoDB and S3." }); } catch (error) { console.error("Error in /api/storeFoodData:", error); res.status(500).json({ message: "Error storing food data in MongoDB", error }); } }); // Exporting the app instance for use in index.js export default app;