summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBigCoke233 <hi@guhub.cn>2026-01-31 12:18:33 +0800
committerBigCoke233 <hi@guhub.cn>2026-01-31 12:18:33 +0800
commitd584f5f772ded3fab1328f7c991b980f18d2654e (patch)
tree8ee157d67ab73df3f65bbb51c89d4d10fc925ea1
parent6e9ed3d5c331731fc93d80cebf82becaa2dc4178 (diff)
refactor: use event listener to trigger fediform button
-rw-r--r--assets/js/fediform.js30
-rw-r--r--layouts/_partials/posts/fediverse-form.html2
2 files changed, 18 insertions, 14 deletions
diff --git a/assets/js/fediform.js b/assets/js/fediform.js
index 96339d41..fb66b830 100644
--- a/assets/js/fediform.js
+++ b/assets/js/fediform.js
@@ -1,16 +1,20 @@
-const instanceInput = document.getElementById('fediverse-instance')
-const savedInstance = localStorage.getItem("geedeapro.fediInstance")
-if (savedInstance) instanceInput.value = savedInstance
+document.addEventListener("DOMContentLoaded", () => {
+ const instanceInput = document.getElementById('fediverse-instance')
+ const savedInstance = localStorage.getItem("geedeapro.fediInstance")
+ if (savedInstance) instanceInput.value = savedInstance
-function openInFediverse() {
- const instance = instanceInput.value.trim();
- const tootUrl = '{{ .Params.toot }}';
+ function openInFediverse() {
+ const instance = instanceInput.value.trim();
+ const tootUrl = '{{ .Params.toot }}';
- let url = tootUrl
- if (instance) {
- url = 'https://' + instance + '/authorize_interaction?uri=' + encodeURIComponent(tootUrl);
- // save instance url to localStorage
- localStorage.setItem("geedeapro.fediInstance", instance)
+ let url = tootUrl
+ if (instance) {
+ url = 'https://' + instance + '/authorize_interaction?uri=' + encodeURIComponent(tootUrl);
+ // save instance url to localStorage
+ localStorage.setItem("geedeapro.fediInstance", instance)
+ }
+ window.open(url, '_blank');
}
- window.open(url, '_blank');
-}
+
+ document.getElementById("fediform-button").addEventListener("click", openInFediverse)
+})
diff --git a/layouts/_partials/posts/fediverse-form.html b/layouts/_partials/posts/fediverse-form.html
index 1ddc09a0..9d395d22 100644
--- a/layouts/_partials/posts/fediverse-form.html
+++ b/layouts/_partials/posts/fediverse-form.html
@@ -2,6 +2,6 @@
<div class="flex flex-col gap-2">
<h4 class="text-sm font-semibold m-0">{{ T "actionMenu.fediverse" }}</h4>
<input type="text" id="fediverse-instance" placeholder="{{ T "actionMenu.fediversePlaceholder" }}" class="text-sm px-2 py-1 border border-neutral-300 dark:border-neutral-600 rounded bg-transparent">
- <button onclick="openInFediverse()" class="text-xs px-2 py-1 bg-neutral-200 dark:bg-neutral-600 rounded hover:bg-neutral-300 dark:hover:bg-neutral-500 transition-colors">{{ T "actionMenu.openToot" }}</button>
+ <button id="fediform-button" class="text-xs px-2 py-1 bg-neutral-200 dark:bg-neutral-600 rounded hover:bg-neutral-300 dark:hover:bg-neutral-500 transition-colors">{{ T "actionMenu.openToot" }}</button>
</div>
{{ end }}