From b8a095753057bbfb5f06ef1b5139aa4d4b178596 Mon Sep 17 00:00:00 2001 From: Jeroen van Dijk Date: Wed, 26 May 2021 17:45:56 +0300 Subject: [PATCH 1/2] =?UTF-8?q?Don=E2=80=99t=20load=20scittle=20twice=20(w?= =?UTF-8?q?hile=20testing)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resources/public/cljs/bookmarklet.cljs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/resources/public/cljs/bookmarklet.cljs b/resources/public/cljs/bookmarklet.cljs index cf5d168..468bfe0 100644 --- a/resources/public/cljs/bookmarklet.cljs +++ b/resources/public/cljs/bookmarklet.cljs @@ -18,10 +18,14 @@ (defn bookmarklet-href [code] (str "javascript:(function(){" + "var code='" code "';" + "if(typeof scittle === 'undefined'){" (append-tag :script {:src "https://borkdude.github.io/scittle/js/scittle.js" :onerror "function(){alert('Error loading ' + this.src)}" - :onload (str "function(){scittle.core.eval_string('" code "')}") + :onload (str "function(){scittle.core.eval_string(code)}") }) + "} else { + scittle.core.eval_string(code) }" "})();")) (defn workspace [] From fc15e8a5ac257e3bdac2670d30c4fd54a6dd1bb5 Mon Sep 17 00:00:00 2001 From: Jeroen van Dijk Date: Wed, 26 May 2021 17:54:39 +0300 Subject: [PATCH 2/2] Add simple error handling --- resources/public/cljs/bookmarklet.cljs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/resources/public/cljs/bookmarklet.cljs b/resources/public/cljs/bookmarklet.cljs index 468bfe0..6746fcd 100644 --- a/resources/public/cljs/bookmarklet.cljs +++ b/resources/public/cljs/bookmarklet.cljs @@ -18,14 +18,21 @@ (defn bookmarklet-href [code] (str "javascript:(function(){" - "var code='" code "';" + "var runCode = function() { + try { + scittle.core.eval_string('" code "') + } catch (error) { + console.log('Error in code', error); + alert('Error running code, see console') + } + };" "if(typeof scittle === 'undefined'){" (append-tag :script {:src "https://borkdude.github.io/scittle/js/scittle.js" :onerror "function(){alert('Error loading ' + this.src)}" - :onload (str "function(){scittle.core.eval_string(code)}") + :onload (str "runCode") }) "} else { - scittle.core.eval_string(code) }" + runCode() }" "})();")) (defn workspace []