Add styles for hover and visited for table of contents
* Add styles for hover and visited for table of contents * Add cookie based handling of visited table of content links
This commit is contained in:
committed by
Benedikt Rötsch
parent
c7d0860eda
commit
58d7e87325
@@ -31,9 +31,15 @@ router.get('/:slug', catchErrors(async function (req, res, next) {
|
||||
const lessons = course.fields.lessons
|
||||
const lessonIndex = lessons.findIndex((lesson) => lesson.fields.slug === req.params.lslug)
|
||||
const lesson = lessons[lessonIndex]
|
||||
res.render('course', {title: course.fields.title, course, lesson, lessons, lessonIndex})
|
||||
const cookie = req.cookies.visitedLessons
|
||||
let visitedLessons = cookie || []
|
||||
visitedLessons.push(course.sys.id)
|
||||
visitedLessons = [...new Set(visitedLessons)]
|
||||
res.cookie('visitedLessons', visitedLessons, { maxAge: 900000, httpOnly: true })
|
||||
res.render('course', {title: course.fields.title, course, lesson, lessons, lessonIndex, visitedLessons})
|
||||
}))
|
||||
|
||||
|
||||
/* GET course lesson detail. */
|
||||
router.get('/:cslug/lessons/:lslug', catchErrors(async function (req, res, next) {
|
||||
let course = await getCourse(req.params.cslug, req.query.locale, req.query.api)
|
||||
@@ -41,12 +47,18 @@ router.get('/:cslug/lessons/:lslug', catchErrors(async function (req, res, next)
|
||||
const lessonIndex = lessons.findIndex((lesson) => lesson.fields.slug === req.params.lslug)
|
||||
const lesson = lessons[lessonIndex]
|
||||
const nextLesson = lessons[lessonIndex + 1] || null
|
||||
const cookie = req.cookies.visitedLessons
|
||||
let visitedLessons = cookie || []
|
||||
visitedLessons.push(lesson.sys.id)
|
||||
visitedLessons = [...new Set(visitedLessons)]
|
||||
res.cookie('visitedLessons', visitedLessons, { maxAge: 900000, httpOnly: true })
|
||||
res.render('course', {
|
||||
title: `${course.fields.title} | ${lesson.fields.title}`,
|
||||
course,
|
||||
lesson,
|
||||
lessons,
|
||||
nextLesson
|
||||
nextLesson,
|
||||
visitedLessons
|
||||
})
|
||||
}))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user