From 8c2b2a95f2d68c2cd54e838672ddd29fe56bdf98 Mon Sep 17 00:00:00 2001
From: Martin Pitt <martin@piware.de>
Date: Sun, 2 Jul 2023 08:37:16 +0200
Subject: [PATCH] Add loading via URL

---
 chordpro-web.js | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/chordpro-web.js b/chordpro-web.js
index 45f800d..a37c833 100644
--- a/chordpro-web.js
+++ b/chordpro-web.js
@@ -57,4 +57,23 @@ function renderChordpro(text) {
     render(song, el_song);
 }
 
-document.getElementById('open').addEventListener('change', async ev => renderChordpro(await ev.target.files[0].text()));
+async function main() {
+    document.getElementById('open').addEventListener('change', async ev => renderChordpro(await ev.target.files[0].text()));
+
+    const params = new URLSearchParams(document.location.search);
+    const loadURL = params.get('l');
+    if (loadURL) {
+        try {
+            const response = await fetch(loadURL);
+            if (response.ok) {
+                renderChordpro(await response.text());
+            } else {
+                console.warn('Failed to fetch', loadURL, ':', response.status, response.statusText);
+            }
+        } catch (error) {
+            console.warn('Failed to fetch', loadURL, ':', error);
+        }
+    }
+}
+
+main();
-- 
2.39.5