From b25e6ea74fd3d0a657240262bae16320802a932e Mon Sep 17 00:00:00 2001 From: Felix Hamann Date: Sat, 23 Mar 2019 23:13:16 +0100 Subject: [PATCH] open course teasers via click anywhere on collapsed teaser --- templates/widgets/course-teaser/course-teaser.julius | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/templates/widgets/course-teaser/course-teaser.julius b/templates/widgets/course-teaser/course-teaser.julius index 0d757de09..14d4436ab 100644 --- a/templates/widgets/course-teaser/course-teaser.julius +++ b/templates/widgets/course-teaser/course-teaser.julius @@ -4,11 +4,15 @@ var COURSE_TEASER_CHEVRON_CLASS = 'course-chevron'; document.addEventListener('DOMContentLoaded', function() { var courseTeaserId = #{String courseId}; var courseTeaser = document.querySelector('#course-' + courseTeaserId); - var courseTeaserChevron = courseTeaser.querySelector('.' + COURSE_TEASER_CHEVRON_CLASS); - courseTeaserChevron.addEventListener('click', function(event) { - event.preventDefault(); - courseTeaser.classList.toggle(COURSE_TEASER_EXPANDED_CLASS); + courseTeaser.addEventListener('click', function(event) { + var isLink = event.target.tagName.toLowerCase() === 'a'; + var isChevron = event.target.classList.contains(COURSE_TEASER_CHEVRON_CLASS); + var isExpanded = courseTeaser.classList.contains(COURSE_TEASER_EXPANDED_CLASS); + + if ((!isExpanded && !isLink) || isChevron) { + courseTeaser.classList.toggle(COURSE_TEASER_EXPANDED_CLASS); + } }); courseTeaser.addEventListener('keydown', function(event) {