Files
Gainsight/Custom_Templates/customer_templates/Walmart Supplier Prod/_analysis-and-reporting-carousel.html.liquid

103 lines
3.9 KiB
Plaintext

<div class="carousel-wrapper">
<div class="carousel-heading">Analysis and Reporting</div>
<div class="carousel-filter-wrapper" id="carousel-filter-wrapper-analysis">
<div class="filter-container">
<div class="filter" id="filterToggleAnalysis">Filter</div>
</div>
<div class="filter-content" id="filterContentAnalysis">
<div class="filter-option">
<input class="filter-checkbox" type="checkbox" id="a-not-started">
<label class="filter-name">Not Started</label>
</div>
<div class="filter-option">
<input class="filter-checkbox" type="checkbox" id="a-in-progress">
<label class="filter-name">In Progress</label>
</div>
<div class="filter-option">
<input class="filter-checkbox" type="checkbox" id="a-completed">
<label class="filter-name">Completed</label>
</div>
</div>
</div>
<div class="analysis-and-reporting-carousel">
{% for course in courses.in_catalog %}
{% for category in course.categories %}
{% if category.name == 'Analysis and Reporting' %}
<div class="carousel-cards-container analysis-courses" progress="{% if course.progress == 100 %}completed{% elsif course.progress == 0 %}not-started{% else %}in-progress{% endif %}">
{% include 'cards_course' %}
</div>
{% endif %}
{% endfor %}
{% endfor %}
</div>
</div>
<style>
.analysis-and-reporting-carousel {
margin-top: 25px;
}
</style>
<script>
$(document).ready(function() {
$(".analysis-and-reporting-carousel").slick({
slidesToShow: 3,
cssEase: 'linear',
prevArrow: '<i class="fal fa-chevron-left arrow-left"></i>',
nextArrow: '<i class="fal fa-chevron-right arrow-right"></i>',
infinite: false,
responsive: [
{
breakpoint: 1170,
settings: {
slidesToShow: 2,
}
},
{
breakpoint: 768,
settings: {
slidesToShow: 1,
slidesToScroll: 1,
dots: false,
arrows: true,
}
}
]
});
document.getElementById("filterToggleAnalysis").addEventListener("click", function() {
const filterWrapper = document.querySelector('#carousel-filter-wrapper-analysis');
filterWrapper.classList.toggle("filter-active");
});
document.addEventListener("click", function(event) {
const filterWrapper = document.querySelector('#carousel-filter-wrapper-analysis');
const isClickInside = filterWrapper.contains(event.target) || event.target.id === "filterToggleAnalysis";
if (!isClickInside) {
filterWrapper.classList.remove("filter-active");
}
});
function filterCardsAnalysis() {
const selectedFilters = Array.from(document.querySelectorAll('#filterContentAnalysis .filter-checkbox:checked')).map(checkbox => checkbox.id.replace('a-', ''));
const cards = document.querySelectorAll('.analysis-courses');
$(".analysis-and-reporting-carousel").slick('slickUnfilter');
if (selectedFilters.length === 0) {
$(".analysis-and-reporting-carousel").slick('slickUnfilter');
} else {
$(".analysis-and-reporting-carousel").slick('slickFilter', function(index, element) {
const cardProgress = element.getAttribute('progress');
return selectedFilters.includes(cardProgress);
});
}
}
document.querySelectorAll('#filterContentAnalysis .filter-checkbox').forEach(checkbox => {
checkbox.addEventListener('change', filterCardsAnalysis);
});
});
</script>