express-inventory-application/controllers/item.js

52 lines
1.3 KiB
JavaScript

const Category = require("../models/category.js");
const Item = require("../models/item.js");
const asyncHandler = require("express-async-handler");
exports.index = asyncHandler(async (req, res, next) => {
// get current item from URL
const item = await Item.findOne({
_id: req.params.item,
})
.lean()
.exec();
// get current category from item
const category = await Category.findById(item.category).lean().exec();
// check
if (item === null) {
const error = new Error("Item not found");
return next(error);
}
// render with all relevant vars
res.render("item", {
item: item,
category: category,
});
});
exports.item_detail = asyncHandler(async (req, res, next) => {
res.send("ligma");
});
exports.item_create_get = asyncHandler(async (req, res, next) => {
res.send("ligma");
});
exports.item_create_post = asyncHandler(async (req, res, next) => {
res.send("ligma");
});
exports.item_delete_get = asyncHandler(async (req, res, next) => {
res.send("ligma");
});
exports.item_delete_post = asyncHandler(async (req, res, next) => {
res.send("ligma");
});
exports.item_update_get = asyncHandler(async (req, res, next) => {
res.send("ligma");
});
exports.item_update_post = asyncHandler(async (req, res, next) => {
res.send("ligma");
});