diff --git a/Client/src/Features/Monitors/monitorsSlice.js b/Client/src/Features/Monitors/monitorsSlice.js index d5c257021..8086f1eb4 100644 --- a/Client/src/Features/Monitors/monitorsSlice.js +++ b/Client/src/Features/Monitors/monitorsSlice.js @@ -50,11 +50,14 @@ export const getMonitorsByUserId = createAsyncThunk( async (token, thunkApi) => { const user = jwtDecode(token); try { - const res = await axiosInstance.get("/monitors/user/" + user._id, { - headers: { - Authorization: `Bearer ${token}`, - }, - }); + const res = await axiosInstance.get( + `/monitors/user/${user._id}?limit=25`, + { + headers: { + Authorization: `Bearer ${token}`, + }, + } + ); return res.data; } catch (error) { if (error.response && error.response.data) { diff --git a/Server/db/MongoDB.js b/Server/db/MongoDB.js index 36741711c..9b5a485f8 100644 --- a/Server/db/MongoDB.js +++ b/Server/db/MongoDB.js @@ -293,19 +293,19 @@ const getMonitorById = async (req, res) => { */ const getMonitorsByUserId = async (req, res) => { try { - const limit = req.body.limit; + const limit = req.query.limit; const monitors = await Monitor.find({ userId: req.params.userId }); // Map each monitor to include its associated checks const monitorsWithChecks = await Promise.all( monitors.map(async (monitor) => { - - if(limit) { + if (limit) { // Checks are order oldest -> newest - const checks = await Check.find({ monitorId: monitor._id }).sort({ - createdAt: 1, - }).limit(limit);; + const checks = await Check.find({ monitorId: monitor._id }) + .sort({ + createdAt: 1, + }) + .limit(limit); return { ...monitor.toObject(), checks }; - } else { // Checks are order oldest -> newest const checks = await Check.find({ monitorId: monitor._id }).sort({ diff --git a/Server/routes/monitorRoute.js b/Server/routes/monitorRoute.js index d19aedad9..ae7a5852e 100644 --- a/Server/routes/monitorRoute.js +++ b/Server/routes/monitorRoute.js @@ -5,7 +5,7 @@ const Monitor = require("../models/Monitor"); router.get("/", monitorController.getAllMonitors); router.get("/:monitorId", monitorController.getMonitorById); -router.get("/user/:userId?limit", monitorController.getMonitorsByUserId); +router.get("/user/:userId", monitorController.getMonitorsByUserId); router.post("/", monitorController.createMonitor); router.post(