From ee317ee226ad51699ced0781bfca1fb0a28dae62 Mon Sep 17 00:00:00 2001 From: hamasoasis Date: Wed, 8 Apr 2026 22:33:09 -0500 Subject: [PATCH 1/4] Fix mobile compatibility: safe passive touch listeners and NodeList.forEach compatibility --- _includes/_navigation.html | 8 ++++---- assets/js/javascript.js | 31 +++++++++++++++++++++++-------- 2 files changed, 27 insertions(+), 12 deletions(-) diff --git a/_includes/_navigation.html b/_includes/_navigation.html index 765e25a..2d08ca6 100644 --- a/_includes/_navigation.html +++ b/_includes/_navigation.html @@ -168,7 +168,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -181,7 +181,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -191,7 +191,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -213,7 +213,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/assets/js/javascript.js b/assets/js/javascript.js index 9146e35..d82c71f 100644 --- a/assets/js/javascript.js +++ b/assets/js/javascript.js @@ -236,14 +236,29 @@ function FastClick(a,b){"use strict";function c(a,b){return function(){return a. * Licensed under the MIT license. */ - (function($) { - - // requestAnimationFrame polyfill adapted from Erik Möller - // fixes from Paul Irish and Tino Zijdel - // http://paulirish.com/2011/requestanimationframe-for-smart-animating/ - // http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating - - var animating, + (function(){ + if (typeof document.body === 'undefined') return; + + // Feature-detect support for passive event listener options to avoid + // throwing in older browsers. If supported, register non-passive + // touch listeners so `preventDefault()` works on touch events. + var supportsPassive = false; + try { + var opts = Object.defineProperty({}, 'passive', { get: function() { supportsPassive = true; } }); + window.addEventListener('testPassive', null, opts); + window.removeEventListener('testPassive', null, opts); + } catch (e) {} + + var listenerOpts = supportsPassive ? { passive: false } : false; + try { + document.addEventListener('touchstart', function() {}, listenerOpts); + document.addEventListener('touchmove', function() {}, listenerOpts); + document.addEventListener('touchend', function() {}, listenerOpts); + } catch (e) { + // Some environments may still throw; fail silently — this shouldn't + // block the rest of the script. + } + })(); lastTime = 0, vendors = ['webkit', 'moz'], requestAnimationFrame = window.requestAnimationFrame, From 231c61c23c1425bcbe9aa0570a7f15b82edf40c4 Mon Sep 17 00:00:00 2001 From: hamasoasis Date: Wed, 8 Apr 2026 22:45:42 -0500 Subject: [PATCH 2/4] Fix page outlook --- _site/404.html | 8 +++--- _site/about/index.html | 8 +++--- _site/adaptive/index.html | 8 +++--- _site/agenda/index.html | 8 +++--- _site/assets/js/javascript.js | 31 ++++++++++++++------ _site/assets/xslt/atom.xslt | 8 +++--- _site/assets/xslt/rss.xslt | 8 +++--- _site/atom.xml | 2 +- _site/blog/archive/index.html | 8 +++--- _site/blog/index.html | 8 +++--- _site/contact/index.html | 8 +++--- _site/easi/index.html | 8 +++--- _site/index.html | 8 +++--- _site/mooclet/index.html | 8 +++--- _site/oli/index.html | 8 +++--- _site/overview/index.html | 8 +++--- _site/search/index.html | 8 +++--- _site/sitemap.xml | 46 +++++++++++++++--------------- _site/support/index.html | 8 +++--- _site/team/index.html | 8 +++--- _site/training_material/index.html | 8 +++--- _site/upgrade/index.html | 8 +++--- _site/workshops/index.html | 8 +++--- 23 files changed, 127 insertions(+), 112 deletions(-) diff --git a/_site/404.html b/_site/404.html index a406e6b..c28d83c 100644 --- a/_site/404.html +++ b/_site/404.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/about/index.html b/_site/about/index.html index 64b49e5..7ee351b 100644 --- a/_site/about/index.html +++ b/_site/about/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/adaptive/index.html b/_site/adaptive/index.html index 8d94fca..8ccaa31 100644 --- a/_site/adaptive/index.html +++ b/_site/adaptive/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/agenda/index.html b/_site/agenda/index.html index e41fe39..ce09333 100644 --- a/_site/agenda/index.html +++ b/_site/agenda/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/assets/js/javascript.js b/_site/assets/js/javascript.js index 9146e35..d82c71f 100644 --- a/_site/assets/js/javascript.js +++ b/_site/assets/js/javascript.js @@ -236,14 +236,29 @@ function FastClick(a,b){"use strict";function c(a,b){return function(){return a. * Licensed under the MIT license. */ - (function($) { - - // requestAnimationFrame polyfill adapted from Erik Möller - // fixes from Paul Irish and Tino Zijdel - // http://paulirish.com/2011/requestanimationframe-for-smart-animating/ - // http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating - - var animating, + (function(){ + if (typeof document.body === 'undefined') return; + + // Feature-detect support for passive event listener options to avoid + // throwing in older browsers. If supported, register non-passive + // touch listeners so `preventDefault()` works on touch events. + var supportsPassive = false; + try { + var opts = Object.defineProperty({}, 'passive', { get: function() { supportsPassive = true; } }); + window.addEventListener('testPassive', null, opts); + window.removeEventListener('testPassive', null, opts); + } catch (e) {} + + var listenerOpts = supportsPassive ? { passive: false } : false; + try { + document.addEventListener('touchstart', function() {}, listenerOpts); + document.addEventListener('touchmove', function() {}, listenerOpts); + document.addEventListener('touchend', function() {}, listenerOpts); + } catch (e) { + // Some environments may still throw; fail silently — this shouldn't + // block the rest of the script. + } + })(); lastTime = 0, vendors = ['webkit', 'moz'], requestAnimationFrame = window.requestAnimationFrame, diff --git a/_site/assets/xslt/atom.xslt b/_site/assets/xslt/atom.xslt index e3ae3e7..6c11f1f 100644 --- a/_site/assets/xslt/atom.xslt +++ b/_site/assets/xslt/atom.xslt @@ -367,7 +367,7 @@ document.addEventListener('DOMContentLoaded', function () { }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -380,7 +380,7 @@ document.addEventListener('DOMContentLoaded', function () { /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -390,7 +390,7 @@ document.addEventListener('DOMContentLoaded', function () { var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -412,7 +412,7 @@ document.addEventListener('DOMContentLoaded', function () { }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/assets/xslt/rss.xslt b/_site/assets/xslt/rss.xslt index 1ada5ce..a147147 100644 --- a/_site/assets/xslt/rss.xslt +++ b/_site/assets/xslt/rss.xslt @@ -367,7 +367,7 @@ document.addEventListener('DOMContentLoaded', function () { }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -380,7 +380,7 @@ document.addEventListener('DOMContentLoaded', function () { /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -390,7 +390,7 @@ document.addEventListener('DOMContentLoaded', function () { var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -412,7 +412,7 @@ document.addEventListener('DOMContentLoaded', function () { }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/atom.xml b/_site/atom.xml index 9a19b33..4eb9a94 100644 --- a/_site/atom.xml +++ b/_site/atom.xml @@ -4,7 +4,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/ EASI - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 EASI is an NSF funded project entitled "Experiments-As-a-Service-Infrastructure (EASI) to enable a collaborative ecosystem of experimentation in real-world educational settings" diff --git a/_site/blog/archive/index.html b/_site/blog/archive/index.html index 2c5495b..c767b30 100644 --- a/_site/blog/archive/index.html +++ b/_site/blog/archive/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/blog/index.html b/_site/blog/index.html index bb64064..5ed1340 100644 --- a/_site/blog/index.html +++ b/_site/blog/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/contact/index.html b/_site/contact/index.html index d966202..d166426 100644 --- a/_site/contact/index.html +++ b/_site/contact/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/easi/index.html b/_site/easi/index.html index 418cdc7..d2306eb 100644 --- a/_site/easi/index.html +++ b/_site/easi/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/index.html b/_site/index.html index f9bcc94..0f1bdd3 100644 --- a/_site/index.html +++ b/_site/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/mooclet/index.html b/_site/mooclet/index.html index a356212..1a0a086 100644 --- a/_site/mooclet/index.html +++ b/_site/mooclet/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/oli/index.html b/_site/oli/index.html index 6df02d4..3865e51 100644 --- a/_site/oli/index.html +++ b/_site/oli/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/overview/index.html b/_site/overview/index.html index a019975..e5dd17c 100644 --- a/_site/overview/index.html +++ b/_site/overview/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/search/index.html b/_site/search/index.html index 2e80d92..363991e 100644 --- a/_site/search/index.html +++ b/_site/search/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/sitemap.xml b/_site/sitemap.xml index 349d162..6cdfdeb 100644 --- a/_site/sitemap.xml +++ b/_site/sitemap.xml @@ -7,7 +7,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/404.html - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -22,7 +22,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/about/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -37,7 +37,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/adaptive/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -52,7 +52,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/agenda/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -67,7 +67,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/blog/archive/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -84,7 +84,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/atom.xml - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -101,7 +101,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/contact/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -116,7 +116,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/easi/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -131,7 +131,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/feed.xml - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -146,7 +146,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/humans.txt - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -161,7 +161,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/blog/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -176,7 +176,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -191,7 +191,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/mooclet/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -206,7 +206,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/oli/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -221,7 +221,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/overview/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -236,7 +236,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/robots.txt - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -255,7 +255,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/search/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -270,7 +270,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/sitemap.xml - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -287,7 +287,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/support/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -302,7 +302,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/team/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -317,7 +317,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/training_material/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -332,7 +332,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/upgrade/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly @@ -347,7 +347,7 @@ http://localhost:4000/ADAPTIVEEXPERIMENTS/workshops/ - 2026-04-08T22:18:33-05:00 + 2026-04-08T22:32:06-05:00 monthly diff --git a/_site/support/index.html b/_site/support/index.html index 11eeaac..d2d8e82 100644 --- a/_site/support/index.html +++ b/_site/support/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/team/index.html b/_site/team/index.html index 7db6dfb..de768bf 100644 --- a/_site/team/index.html +++ b/_site/team/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/training_material/index.html b/_site/training_material/index.html index 8e354c3..194ef98 100644 --- a/_site/training_material/index.html +++ b/_site/training_material/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/upgrade/index.html b/_site/upgrade/index.html index bc5ad8f..9ce1e6b 100644 --- a/_site/upgrade/index.html +++ b/_site/upgrade/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { diff --git a/_site/workshops/index.html b/_site/workshops/index.html index e7147ba..d2e877a 100644 --- a/_site/workshops/index.html +++ b/_site/workshops/index.html @@ -361,7 +361,7 @@ }); // Close drawer when a link inside it is clicked - drawer.querySelectorAll('a').forEach(function (a) { + Array.prototype.forEach.call(drawer.querySelectorAll('a'), function (a) { a.addEventListener('click', function () { drawer.classList.remove('open'); btn.classList.remove('open'); @@ -374,7 +374,7 @@ /* ── Desktop Dropdown — click-to-open ──────────── */ var ddTriggers = document.querySelectorAll('.easi-nav-links > li > a[aria-haspopup="true"]'); - ddTriggers.forEach(function (trigger) { + Array.prototype.forEach.call(ddTriggers, function (trigger) { var parentLi = trigger.parentElement; trigger.addEventListener('click', function (e) { @@ -384,7 +384,7 @@ var isOpen = parentLi.classList.toggle('dd-open'); trigger.setAttribute('aria-expanded', String(isOpen)); - document.querySelectorAll('.easi-nav-links > li.dd-open').forEach(function (li) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-nav-links > li.dd-open'), function (li) { if (li !== parentLi) { li.classList.remove('dd-open'); var t = li.querySelector('a[aria-haspopup]'); @@ -406,7 +406,7 @@ }); // Close dropdown when a sub-link is clicked - document.querySelectorAll('.easi-dropdown a').forEach(function (a) { + Array.prototype.forEach.call(document.querySelectorAll('.easi-dropdown a'), function (a) { a.addEventListener('click', function () { var parentLi = a.closest('.easi-nav-links > li'); if (parentLi) { From 63417e93468ab61c6590b0cdca7b236f50328487 Mon Sep 17 00:00:00 2001 From: hamasoasis Date: Sat, 11 Apr 2026 20:38:57 -0500 Subject: [PATCH 3/4] Fix syntax error in javascript.js polyfill --- assets/js/javascript.js | 23 +---------------------- 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/assets/js/javascript.js b/assets/js/javascript.js index 6d0ed30..77d902c 100644 --- a/assets/js/javascript.js +++ b/assets/js/javascript.js @@ -238,28 +238,7 @@ $(function() { */ (function(){ - if (typeof document.body === 'undefined') return; - - // Feature-detect support for passive event listener options to avoid - // throwing in older browsers. If supported, register non-passive - // touch listeners so `preventDefault()` works on touch events. - var supportsPassive = false; - try { - var opts = Object.defineProperty({}, 'passive', { get: function() { supportsPassive = true; } }); - window.addEventListener('testPassive', null, opts); - window.removeEventListener('testPassive', null, opts); - } catch (e) {} - - var listenerOpts = supportsPassive ? { passive: false } : false; - try { - document.addEventListener('touchstart', function() {}, listenerOpts); - document.addEventListener('touchmove', function() {}, listenerOpts); - document.addEventListener('touchend', function() {}, listenerOpts); - } catch (e) { - // Some environments may still throw; fail silently — this shouldn't - // block the rest of the script. - } - })(); + var animating, lastTime = 0, vendors = ['webkit', 'moz'], requestAnimationFrame = window.requestAnimationFrame, From bff8b63946f89a663c2a5db9b4f4777983ca49fd Mon Sep 17 00:00:00 2001 From: hamasoasis Date: Sat, 11 Apr 2026 20:39:12 -0500 Subject: [PATCH 4/4] Build site --- _site/404.html | 83 ++++++++++++++--------------- _site/about/index.html | 77 +++++++++++++-------------- _site/adaptive/index.html | 73 +++++++++++++------------ _site/agenda/index.html | 73 +++++++++++++------------ _site/assets/css/modern-theme.css | 33 +++++++----- _site/assets/js/javascript.js | 23 +------- _site/assets/xslt/atom.xslt | 73 +++++++++++++------------ _site/assets/xslt/rss.xslt | 73 +++++++++++++------------ _site/blog/archive/index.html | 77 +++++++++++++-------------- _site/blog/index.html | 75 +++++++++++++------------- _site/contact/index.html | 69 ++++++++++++------------ _site/easi/index.html | 71 ++++++++++++------------- _site/feed.xml | 8 +-- _site/humans.txt | 2 +- _site/index.html | 85 +++++++++++++++--------------- _site/mooclet/index.html | 73 +++++++++++++------------ _site/oli/index.html | 73 +++++++++++++------------ _site/overview/index.html | 71 ++++++++++++------------- _site/robots.txt | 2 +- _site/search/index.html | 79 ++++++++++++++------------- _site/support/index.html | 73 +++++++++++++------------ _site/team/index.html | 85 +++++++++++++++--------------- _site/training_material/index.html | 73 +++++++++++++------------ _site/upgrade/index.html | 73 +++++++++++++------------ _site/workshops/index.html | 69 ++++++++++++------------ 25 files changed, 766 insertions(+), 800 deletions(-) diff --git a/_site/404.html b/_site/404.html index c28d83c..9f16d5a 100644 --- a/_site/404.html +++ b/_site/404.html @@ -5,14 +5,14 @@ Oops! Nothing here... - - + + - + @@ -477,8 +476,8 @@ @@ -524,7 +523,7 @@
About This Site

EASI is an NSF funded project entitled "Experiments-As-a-Service-Infrastructure (EASI) to enable a collaborative ecosystem of experimentation in real-world educational settings" - More › + More ›

Content on this site, except where indicated otherwise, is licensed under a CC BY 4.0 license.
@@ -579,7 +578,7 @@

About This Site
- + diff --git a/_site/about/index.html b/_site/about/index.html index 7ee351b..7602a79 100644 --- a/_site/about/index.html +++ b/_site/about/index.html @@ -5,14 +5,14 @@ EASI Project - - + + - + + diff --git a/_site/adaptive/index.html b/_site/adaptive/index.html index 8ccaa31..7f55828 100644 --- a/_site/adaptive/index.html +++ b/_site/adaptive/index.html @@ -5,14 +5,14 @@ Adaptive Experiment - - + + - + + diff --git a/_site/agenda/index.html b/_site/agenda/index.html index ce09333..6b7f38f 100644 --- a/_site/agenda/index.html +++ b/_site/agenda/index.html @@ -5,14 +5,14 @@ Workshop Agenda - - + + - + + diff --git a/_site/assets/css/modern-theme.css b/_site/assets/css/modern-theme.css index 4c97094..ee34988 100644 --- a/_site/assets/css/modern-theme.css +++ b/_site/assets/css/modern-theme.css @@ -313,28 +313,35 @@ a:hover { color: var(--easi-cyan); } flex-direction: column; justify-content: center; align-items: center; - gap: 5px; - width: 38px; - height: 38px; - background: rgba(34,211,238,.1); - border: 1px solid rgba(34,211,238,.2); - border-radius: var(--radius-sm); + gap: 6px; + width: 42px; + height: 42px; + background: rgba(34,211,238,.08); + backdrop-filter: blur(8px); + -webkit-backdrop-filter: blur(8px); + border: 1px solid rgba(34,211,238,.15); + border-radius: var(--radius-md); cursor: pointer; padding: 0; - transition: background var(--transition); + transition: all var(--transition); + box-shadow: 0 4px 12px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.05); +} +.easi-hamburger:hover { + background: rgba(34,211,238,.15); + border-color: rgba(34,211,238,.3); + box-shadow: 0 6px 16px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.1); } -.easi-hamburger:hover { background: rgba(34,211,238,.18); } .easi-hamburger span { display: block; - width: 18px; + width: 20px; height: 2px; background: var(--easi-cyan); border-radius: 99px; - transition: transform var(--transition), opacity var(--transition); + transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease; + transform-origin: center; } -.easi-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); } -.easi-hamburger.open span:nth-child(2) { opacity: 0; } -.easi-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); } +.easi-hamburger.open span:nth-child(1) { transform: translateY(4px) rotate(45deg); } +.easi-hamburger.open span:nth-child(2) { transform: translateY(-4px) rotate(-45deg); } /* Mobile drawer */ #easi-mobile-drawer { diff --git a/_site/assets/js/javascript.js b/_site/assets/js/javascript.js index 6d0ed30..77d902c 100644 --- a/_site/assets/js/javascript.js +++ b/_site/assets/js/javascript.js @@ -238,28 +238,7 @@ $(function() { */ (function(){ - if (typeof document.body === 'undefined') return; - - // Feature-detect support for passive event listener options to avoid - // throwing in older browsers. If supported, register non-passive - // touch listeners so `preventDefault()` works on touch events. - var supportsPassive = false; - try { - var opts = Object.defineProperty({}, 'passive', { get: function() { supportsPassive = true; } }); - window.addEventListener('testPassive', null, opts); - window.removeEventListener('testPassive', null, opts); - } catch (e) {} - - var listenerOpts = supportsPassive ? { passive: false } : false; - try { - document.addEventListener('touchstart', function() {}, listenerOpts); - document.addEventListener('touchmove', function() {}, listenerOpts); - document.addEventListener('touchend', function() {}, listenerOpts); - } catch (e) { - // Some environments may still throw; fail silently — this shouldn't - // block the rest of the script. - } - })(); + var animating, lastTime = 0, vendors = ['webkit', 'moz'], requestAnimationFrame = window.requestAnimationFrame, diff --git a/_site/assets/xslt/atom.xslt b/_site/assets/xslt/atom.xslt index 6c11f1f..e4c5d22 100644 --- a/_site/assets/xslt/atom.xslt +++ b/_site/assets/xslt/atom.xslt @@ -10,14 +10,14 @@ Atom Feed (Styled) - - + + - + + diff --git a/_site/assets/xslt/rss.xslt b/_site/assets/xslt/rss.xslt index a147147..196ac9e 100644 --- a/_site/assets/xslt/rss.xslt +++ b/_site/assets/xslt/rss.xslt @@ -10,14 +10,14 @@ RSS Feed (Styled) - - + + - + + diff --git a/_site/blog/archive/index.html b/_site/blog/archive/index.html index c767b30..250bc64 100644 --- a/_site/blog/archive/index.html +++ b/_site/blog/archive/index.html @@ -5,14 +5,14 @@ Post Archive - - + + - + + diff --git a/_site/blog/index.html b/_site/blog/index.html index 5ed1340..1aefe3a 100644 --- a/_site/blog/index.html +++ b/_site/blog/index.html @@ -5,14 +5,14 @@ Blog of Feeling Responsive - - + + - + + diff --git a/_site/contact/index.html b/_site/contact/index.html index d166426..efbe42b 100644 --- a/_site/contact/index.html +++ b/_site/contact/index.html @@ -5,14 +5,14 @@ Questions? - - + + - + + diff --git a/_site/easi/index.html b/_site/easi/index.html index d2306eb..5cd24f6 100644 --- a/_site/easi/index.html +++ b/_site/easi/index.html @@ -5,14 +5,14 @@ Experiments-as-a-Service (EASI) - - + + - + + diff --git a/_site/feed.xml b/_site/feed.xml index e0548bd..28a2a5b 100644 --- a/_site/feed.xml +++ b/_site/feed.xml @@ -1,12 +1,12 @@ - - + + EASI EASI is an NSF funded project entitled "Experiments-As-a-Service-Infrastructure (EASI) to enable a collaborative ecosystem of experimentation in real-world educational settings" - http://localhost:4000/ADAPTIVEEXPERIMENTS/ - + https://adaptiveexperiments.github.io/ + diff --git a/_site/humans.txt b/_site/humans.txt index 744c41d..694bb6d 100644 --- a/_site/humans.txt +++ b/_site/humans.txt @@ -16,7 +16,7 @@ Theme: http://phlow.github.io/feeling-responsive/ /* SITE */ -Last Updated: 2026/04/08 +Last Updated: 2026/04/11 Standards: HTML5, CSS3 Software: Sublime Text, Chrome, Jekyll, Git, Imageoptim, JPEGMini, Gulp.js, Sass Components: Foundation Framework, Modernizr, jQuery, Backstretch.js, Reveal diff --git a/_site/index.html b/_site/index.html index 0f1bdd3..9fc9d16 100644 --- a/_site/index.html +++ b/_site/index.html @@ -5,14 +5,14 @@ EASI - - + + - + + diff --git a/_site/mooclet/index.html b/_site/mooclet/index.html index 1a0a086..1bcafa8 100644 --- a/_site/mooclet/index.html +++ b/_site/mooclet/index.html @@ -5,14 +5,14 @@ The MOOClet/AdapComp Framework - - + + - + + diff --git a/_site/oli/index.html b/_site/oli/index.html index 3865e51..ae175c2 100644 --- a/_site/oli/index.html +++ b/_site/oli/index.html @@ -5,14 +5,14 @@ Open Learning Initiative - - + + - + + diff --git a/_site/overview/index.html b/_site/overview/index.html index e5dd17c..df90334 100644 --- a/_site/overview/index.html +++ b/_site/overview/index.html @@ -5,14 +5,14 @@ Publications - - + + - + + diff --git a/_site/robots.txt b/_site/robots.txt index 2afae26..a83c615 100644 --- a/_site/robots.txt +++ b/_site/robots.txt @@ -1,2 +1,2 @@ User-agent: * -Sitemap: http://localhost:4000/ADAPTIVEEXPERIMENTS/sitemap.xml +Sitemap: https://adaptiveexperiments.github.io/sitemap.xml diff --git a/_site/search/index.html b/_site/search/index.html index 363991e..8e844eb 100644 --- a/_site/search/index.html +++ b/_site/search/index.html @@ -5,14 +5,14 @@ Search - - + + - + @@ -465,8 +464,8 @@

Search

@@ -512,7 +511,7 @@

Search

About This Site

EASI is an NSF funded project entitled "Experiments-As-a-Service-Infrastructure (EASI) to enable a collaborative ecosystem of experimentation in real-world educational settings" - More › + More ›

Content on this site, except where indicated otherwise, is licensed under a CC BY 4.0 license.
@@ -567,7 +566,7 @@

About This Site
- + diff --git a/_site/support/index.html b/_site/support/index.html index d2d8e82..bfcd2a1 100644 --- a/_site/support/index.html +++ b/_site/support/index.html @@ -5,14 +5,14 @@ EASI - - + + - + + diff --git a/_site/team/index.html b/_site/team/index.html index de768bf..f272359 100644 --- a/_site/team/index.html +++ b/_site/team/index.html @@ -5,14 +5,14 @@ EASI Team - - + + - + + diff --git a/_site/training_material/index.html b/_site/training_material/index.html index 194ef98..251dfd2 100644 --- a/_site/training_material/index.html +++ b/_site/training_material/index.html @@ -5,14 +5,14 @@ Training Material - - + + - + + diff --git a/_site/upgrade/index.html b/_site/upgrade/index.html index 9ce1e6b..8876d36 100644 --- a/_site/upgrade/index.html +++ b/_site/upgrade/index.html @@ -5,14 +5,14 @@ UpGrade - - + + - + + diff --git a/_site/workshops/index.html b/_site/workshops/index.html index d2e877a..4a26691 100644 --- a/_site/workshops/index.html +++ b/_site/workshops/index.html @@ -5,14 +5,14 @@ Workshops - - + + - + +