From 82a9a48d86e3df3317228e2f88d3c93c86dc289d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benedikt=20R=C3=B6tsch?= Date: Tue, 20 Feb 2018 13:10:48 +0100 Subject: [PATCH] fix(courses): don't break app on draft courses without lessons --- routes/courses.js | 3 +++ views/course.pug | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/routes/courses.js b/routes/courses.js index e66ea37..c828703 100644 --- a/routes/courses.js +++ b/routes/courses.js @@ -63,6 +63,9 @@ module.exports.getCourse = async (request, response, next) => { } // Get lessons + if (!course.fields.lessons) { + course.fields.lessons = [] + } const lessons = course.fields.lessons let {lesson, lessonIndex} = getNextLesson(lessons, request.params.lslug) diff --git a/views/course.pug b/views/course.pug index 2cd91c4..a1e951c 100644 --- a/views/course.pug +++ b/views/course.pug @@ -39,6 +39,7 @@ block content svg.course__overview-icon use(xlink:href='/icons/icons.svg#skill-level') .course__overview-value #{translate('skillLevelLabel', currentLocale.code)}: #{translate(`${course.fields.skillLevel}Label`, currentLocale.code)} - .course__overview-cta-wrapper - a.course__overview-cta.cta(href=`/courses/${course.fields.slug}/lessons/${course.fields.lessons[0].fields.slug}${queryString}`) #{translate('startCourseLabel', currentLocale.code)} + if course.fields.lessons && course.fields.lessons.length + .course__overview-cta-wrapper + a.course__overview-cta.cta(href=`/courses/${course.fields.slug}/lessons/${course.fields.lessons[0].fields.slug}${queryString}`) #{translate('startCourseLabel', currentLocale.code)} .course__description !{helpers.markdown(course.fields.description)}