Swift + Apps Scripts

This commit is contained in:
Norm Rasmussen
2022-09-14 16:22:13 -04:00
parent 9bbfdebee8
commit 7c1b45c15f
27 changed files with 604 additions and 39 deletions

View File

@ -1,34 +0,0 @@
<div class="np-card">
<div class="np-card-container">
{% if course.ribbon %}
<div class="np-card-ribbon">
{{ course.ribbon }}
</div>
{% endif %}
<img
class="np-card-image"
alt="{{ course.name }}"
src="{{ course.image_url }}"
>
<div class="np-card-content np-card-content-vertical np-card-padding">
<h3 class="np-card-content-title">
{{ course.name }}
</h3>
<div class="np-card-content-subtitle">
{{ course.instructor_names }}
</div>
<div class="np-card-content-footer">
<div class="np-card-content-progress np-button-color">
{% t shared.progress, count: course.progress %}
</div>
{% capture course_path %}{% route course, id: course.id %}{% endcapture %}
{% if course.has_to_restart? %}
{% include "course_version_outdated_popup", path: course_path %}
{% endif %}
<a class="np-button np-button-wide" href="{{ course_path }}">
{% t shared.view %}
</a>
</div>
</div>
</div>
</div>

View File

@ -1,8 +1,7 @@
{% if courses.in_catalog.any? %}
<div class="np-catalog-courses row row-with-thumbnails">
{% assign sorted_courses = courses.in_catalog | map: "properties" | sort: "course_order" %}
{% for course in sorted_courses %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
<div class="np-catalog-courses row row-with-thumbnails" id="catalog-courses">
{% for course in courses.in_catalog %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content" order="{{course.properties.course_order}}">
{% include "cards_course" with course %}
</div>
{% endfor %}
@ -15,3 +14,25 @@
{% endcapture %}
{% include "courses_zero_state", message: message %}
{% endif %}
<script>
var list = document.getElementById('catalog-courses');
var items = list.childNodes;
var itemsArr = [];
for (var i in items) {
if (items[i].nodeType == 1) {
itemsArr.push(items[i]);
}
}
itemsArr.sort(function (a, b) {
return a.getAttribute('order') == b.getAttribute('order')
? 0
: (a.getAttribute('order') > b.getAttribute('order') ? 1 : -1);
});
for (i = 0; i < itemsArr.length; ++i) {
list.appendChild(itemsArr[i]);
}
</script>