diff --git a/iiif-online-workshop/April2026.md b/iiif-online-workshop/April2026.md
index 841d3474..69f457b2 100644
--- a/iiif-online-workshop/April2026.md
+++ b/iiif-online-workshop/April2026.md
@@ -1,9 +1,3 @@
-
-
-
-
-
-
@@ -68,15 +62,6 @@ Tasks to be completed __before__ the meeting:
There is also a course Google calendar available which you can subscribe to:
-
-
You can also download a ICS version.
## Project Work
@@ -97,49 +82,3 @@ IIIF Technical Coordinator
International Image Interoperability Framework (IIIF) Consortium
http://iiif.io
-
-
diff --git a/iiif-online-workshop/June2026.md b/iiif-online-workshop/June2026.md
index 654d99aa..b6783f59 100644
--- a/iiif-online-workshop/June2026.md
+++ b/iiif-online-workshop/June2026.md
@@ -1,11 +1,6 @@
-
-
-
-
-
-
-
+
+
# Introduction
Thank you for registering for the [IIIF Online Workshop](https://www.eventbrite.com/e/june-2026-iiif-online-training-5-day-course-tickets-1825949497099) between June 22nd to June 26th. This course is an adapted version of an in person workshop and it is the 7th time we have run it online.
diff --git a/iiif-online-workshop/November2026.md b/iiif-online-workshop/November2026.md
index ac3955e6..f9b4eee4 100644
--- a/iiif-online-workshop/November2026.md
+++ b/iiif-online-workshop/November2026.md
@@ -1,12 +1,6 @@
-
-
-
-
-
-
-
+
# Introduction
diff --git a/iiif-online-workshop/SUMMARY.md b/iiif-online-workshop/SUMMARY.md
index 38f32e05..07791ae4 100644
--- a/iiif-online-workshop/SUMMARY.md
+++ b/iiif-online-workshop/SUMMARY.md
@@ -100,10 +100,11 @@
- [June 2024](editions/2024/June2024.md)
- [November 2024](editions/2024/November2024.md)
- [December 2024](editions/2024/December2024.md)
-- [March 2025](March2025.md)
-- [May 2025](May2025.md)
-- [September 2025](September2025.md)
-- [November 2025](November2025.md)
+- [2025 Editions](editions/2025/README.md)
+ - [March 2025](editions/2025/March2025.md)
+ - [May 2025](editions/2025/May2025.md)
+ - [September 2025](editions/2025/September2025.md)
+ - [November 2025](editions/2025/November2025.md)
- [April 2026](April2026.md)
- [June 2026](June2026.md)
- [September 2026](September2026.md)
diff --git a/iiif-online-workshop/September2026.md b/iiif-online-workshop/September2026.md
index fbcde54b..f077e6a2 100644
--- a/iiif-online-workshop/September2026.md
+++ b/iiif-online-workshop/September2026.md
@@ -1,12 +1,6 @@
-
-
-
-
-
-
-
+
# Introduction
@@ -68,15 +62,6 @@ Tasks to be completed __before__ the meeting:
There is also a course Google calendar available which you can subscribe to:
-
-
You can also download a ICS version.
## Project Work
@@ -98,50 +83,3 @@ I look forward to working with you and if you have any questions please don’t
IIIF Technical Coordinator
International Image Interoperability Framework (IIIF) Consortium
http://iiif.io
-
-
-
diff --git a/iiif-online-workshop/March2025.md b/iiif-online-workshop/editions/2025/March2025.md
similarity index 100%
rename from iiif-online-workshop/March2025.md
rename to iiif-online-workshop/editions/2025/March2025.md
diff --git a/iiif-online-workshop/May2025.md b/iiif-online-workshop/editions/2025/May2025.md
similarity index 100%
rename from iiif-online-workshop/May2025.md
rename to iiif-online-workshop/editions/2025/May2025.md
diff --git a/iiif-online-workshop/November2025.md b/iiif-online-workshop/editions/2025/November2025.md
similarity index 100%
rename from iiif-online-workshop/November2025.md
rename to iiif-online-workshop/editions/2025/November2025.md
diff --git a/iiif-online-workshop/editions/2025/README.md b/iiif-online-workshop/editions/2025/README.md
new file mode 100644
index 00000000..ba40f784
--- /dev/null
+++ b/iiif-online-workshop/editions/2025/README.md
@@ -0,0 +1,6 @@
+# 2025 Editions
+
+- [March 2025](March2025.md)
+- [May 2025](May2025.md)
+- [September 2025](September2025.md)
+- [November 2025](November2025.md)
\ No newline at end of file
diff --git a/iiif-online-workshop/September2025.md b/iiif-online-workshop/editions/2025/September2025.md
similarity index 100%
rename from iiif-online-workshop/September2025.md
rename to iiif-online-workshop/editions/2025/September2025.md
diff --git a/iiif-online-workshop/js/setupIntro.js b/iiif-online-workshop/js/setupIntro.js
index 4026ae15..cf92902c 100644
--- a/iiif-online-workshop/js/setupIntro.js
+++ b/iiif-online-workshop/js/setupIntro.js
@@ -1,8 +1,3 @@
-
-dayjs.extend(dayjs_plugin_utc)
-dayjs.extend(dayjs_plugin_timezone)
-dayjs.extend(dayjs_plugin_advancedFormat)
-
function setTime(time, section) {
console.log("Setting time in " + section);
var timezone = jstz.determine();
@@ -72,7 +67,37 @@ function setupDates(start){
setupCalendar(start);
}
-document.addEventListener("DOMContentLoaded", function() {
- var start = document.getElementById("workshop-config").dataset.start;
- setupDates(dayjs.tz(start, "Europe/London"));
+function loadScript(src, integrity) {
+ return new Promise(function(resolve, reject) {
+ var s = document.createElement("script");
+ s.src = src;
+ if (integrity) s.integrity = integrity;
+ s.crossOrigin = "anonymous";
+ s.onload = resolve;
+ s.onerror = reject;
+ document.head.appendChild(s);
+ });
+}
+
+Promise.all([
+ loadScript("https://cdnjs.cloudflare.com/ajax/libs/jstimezonedetect/1.0.7/jstz.min.js", "sha512-pZ0i46J1zsMwPd2NQZ4IaL427jXE2RVHMk3uv/wPTNlBVp9AbB1L65/4YdrXRPLEmyZCkY9qYOOsQp44V4orHg=="),
+ loadScript("https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.9.3/dayjs.min.js", "sha512-u7elBfdMr+7LhU4rvUk3IM28QZDKTyUxba4Nx2IJ1W9cj4shfRSPq7EZXD2ULD9cBoizw2FQyeR6YBog6LcnHg=="),
+]).then(function() {
+ return Promise.all([
+ loadScript("https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.9.3/plugin/utc.min.js"),
+ loadScript("https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.9.3/plugin/timezone.min.js"),
+ loadScript("https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.9.3/plugin/advancedFormat.min.js"),
+ loadScript("https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.9.3/plugin/localizedFormat.min.js"),
+ ]);
+}).then(function() {
+ dayjs.extend(dayjs_plugin_utc);
+ dayjs.extend(dayjs_plugin_timezone);
+ dayjs.extend(dayjs_plugin_advancedFormat);
+ dayjs.extend(dayjs_plugin_localizedFormat);
+
+ var el = document.getElementById("workshop-config");
+ if (el) {
+ var start = dayjs.tz(el.dataset.start, "Europe/London");
+ setupDates(start);
+ }
});
\ No newline at end of file