From 60d2c02ce7dfa7435dd3e790dfccd2b630a6b7bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benedikt=20R=C3=B6tsch?= Date: Mon, 2 Oct 2017 15:27:59 +0200 Subject: [PATCH] fix courses list filtering and titles --- routes/courses.js | 6 ++++-- services/contentful.js | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/routes/courses.js b/routes/courses.js index 15affad..6141015 100644 --- a/routes/courses.js +++ b/routes/courses.js @@ -14,7 +14,7 @@ router.get('/', async function (req, res, next) { } catch (e) { console.log('Error ', e) } - res.render('courses', { title: 'Courses', categories, courses }) + res.render('courses', { title: `All Courses (${courses.length})`, categories, courses }) }) /* GET courses listing. */ @@ -22,13 +22,15 @@ router.get('/categories/:category', async function (req, res, next) { // we get all the entries with the content type `course` let courses = [] let categories = [] + let activeCategory = '' try { courses = await getCoursesByCategory(req.params.category, req.query.locale, req.query.api) categories = await getCategories() + activeCategory = categories.find((category) => category.sys.id === req.params.category) } catch (e) { console.log('Error ', e) } - res.render('courses', { title: 'Courses', categories, courses }) + res.render('courses', { title: `${activeCategory.fields.title} (${courses.length})`, categories, courses }) }) /* GET course detail. */ diff --git a/services/contentful.js b/services/contentful.js index f6bd90d..a4724e3 100644 --- a/services/contentful.js +++ b/services/contentful.js @@ -58,7 +58,7 @@ exports.getCoursesByCategory = (category, locale = 'en-US', api = `cda`) => { const client = api === 'cda' ? cdaClient : cpaClient return client.getEntries({ content_type: 'course', - 'fields.category.sys.contentType.sys.id': category, + 'fields.categories.sys.id': category, locale, include: 10 })