This repository has been archived on 2021-10-31. You can view files and clone it, but cannot push or open issues or pull requests.
SA3/hw6/Claudio_Maggioni/routes/utils.js

40 lines
797 B
JavaScript

function error(err, res) {
console.error(err);
res.status = 500;
res.format({
json: () => res.json({error: err}),
html: () => res.render('500.dust', { err: JSON.stringify(err, null, 2) }),
});
res.end();
}
function renderFav(req, res, favs, list = true) {
const makeTestsPass = e => {
return {
_id: e._id,
name: e.name,
dataURL: e.dataURL,
bookmarked: '' + e.bookmarked
}
};
if (list) {
favs = favs.map(makeTestsPass);
} else {
favs = makeTestsPass(favs);
}
if (req.accepts('html')) {
res.render(favs ? 'favourites.dust' : 'favourite.dust', list ? { favs } : favs);
} else if (req.accepts('json')) {
res.json(favs);
} else {
res.writeHead(406);
res.end();
}
}
module.exports = { error, renderFav };