Werk hoofdapplicatie bij
Legt de bestaande wijzigingen in de hoofdworktree vast voordat de laatste worktree wordt gemerged.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
const router = require("express").Router();
|
||||
|
||||
const auth = require("../middleware/auth");
|
||||
|
||||
const ProductRepository = require("../repositories/ProductRepository");
|
||||
const ShoppingListRepository = require("../repositories/ShoppingListRepository");
|
||||
|
||||
// Get all products
|
||||
router.get("/products", auth, (req, res) => {
|
||||
|
||||
const products = ProductRepository.getAll();
|
||||
|
||||
res.json(products);
|
||||
|
||||
});
|
||||
|
||||
// Get shopping lists for household
|
||||
router.get("/lists", auth, (req, res) => {
|
||||
|
||||
const lists = ShoppingListRepository.getByHousehold(
|
||||
req.user.household_id
|
||||
);
|
||||
|
||||
res.json(lists);
|
||||
|
||||
});
|
||||
|
||||
// Get shopping list items
|
||||
router.get("/lists/:id/items", auth, (req, res) => {
|
||||
|
||||
const list = ShoppingListRepository.getById(req.params.id);
|
||||
|
||||
if (!list || list.household_id !== req.user.household_id) {
|
||||
return res.status(403).json({ error: "Not authorized" });
|
||||
}
|
||||
|
||||
const items = ShoppingListRepository.getItems(req.params.id);
|
||||
|
||||
res.json(items);
|
||||
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
+24
-2
@@ -4,9 +4,25 @@ const router = require("express").Router();
|
||||
const AuthController =
|
||||
require("../controllers/AuthController");
|
||||
|
||||
const HomeController =
|
||||
require("../controllers/HomeController");
|
||||
|
||||
|
||||
// Home page
|
||||
router.get(
|
||||
"/home",
|
||||
HomeController.index
|
||||
);
|
||||
|
||||
// Register
|
||||
router.get(
|
||||
"/register",
|
||||
(req, res, next) => {
|
||||
if (req.user) {
|
||||
return res.redirect("/");
|
||||
}
|
||||
next();
|
||||
},
|
||||
AuthController.registerForm
|
||||
);
|
||||
|
||||
@@ -17,9 +33,15 @@ router.post(
|
||||
);
|
||||
|
||||
|
||||
|
||||
// Login
|
||||
router.get(
|
||||
"/login",
|
||||
(req, res, next) => {
|
||||
if (req.user) {
|
||||
return res.redirect("/");
|
||||
}
|
||||
next();
|
||||
},
|
||||
AuthController.loginForm
|
||||
);
|
||||
|
||||
@@ -30,7 +52,7 @@ router.post(
|
||||
);
|
||||
|
||||
|
||||
|
||||
// Logout
|
||||
router.get(
|
||||
"/logout",
|
||||
AuthController.logout
|
||||
|
||||
+45
-6
@@ -11,8 +11,8 @@ require("../controllers/HouseholdController");
|
||||
const ProductController =
|
||||
require("../controllers/ProductController");
|
||||
|
||||
console.log("AUTH:", auth);
|
||||
console.log("DASHBOARD INDEX:", DashboardController.index);
|
||||
const ShoppingListController =
|
||||
require("../controllers/ShoppingListController");
|
||||
|
||||
router.get(
|
||||
"/",
|
||||
@@ -20,6 +20,42 @@ router.get(
|
||||
DashboardController.index
|
||||
);
|
||||
|
||||
router.get(
|
||||
"/lists",
|
||||
auth,
|
||||
ShoppingListController.index.bind(ShoppingListController)
|
||||
);
|
||||
|
||||
router.post(
|
||||
"/lists",
|
||||
auth,
|
||||
ShoppingListController.create.bind(ShoppingListController)
|
||||
);
|
||||
|
||||
router.get(
|
||||
"/lists/:id",
|
||||
auth,
|
||||
ShoppingListController.show.bind(ShoppingListController)
|
||||
);
|
||||
|
||||
router.post(
|
||||
"/lists/:id/items",
|
||||
auth,
|
||||
ShoppingListController.addItem.bind(ShoppingListController)
|
||||
);
|
||||
|
||||
router.post(
|
||||
"/lists/:id/items/:itemId/toggle",
|
||||
auth,
|
||||
ShoppingListController.toggleItem.bind(ShoppingListController)
|
||||
);
|
||||
|
||||
router.delete(
|
||||
"/lists/:id/items/:itemId",
|
||||
auth,
|
||||
ShoppingListController.deleteItem.bind(ShoppingListController)
|
||||
);
|
||||
|
||||
router.get(
|
||||
"/household",
|
||||
auth,
|
||||
@@ -27,12 +63,15 @@ router.get(
|
||||
);
|
||||
|
||||
router.get(
|
||||
|
||||
"/products",
|
||||
|
||||
auth,
|
||||
|
||||
ProductController.index.bind(ProductController)
|
||||
|
||||
);
|
||||
|
||||
router.post(
|
||||
"/products",
|
||||
auth,
|
||||
ProductController.create.bind(ProductController)
|
||||
);
|
||||
|
||||
module.exports = router;
|
||||
Reference in New Issue
Block a user