A => views/common.js +62 -0
@@ 0,0 1,62 @@
+
+function hotkey(e) {
+ if (e.ctrlKey || e.altKey)
+ return
+ if (e.code == "Escape") {
+ var menu = document.getElementById("topmenu")
+ menu.open = false
+ return
+ }
+ if (e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement)
+ return
+
+ switch (e.code) {
+ case "KeyR":
+ refreshhonks(document.getElementById("honkrefresher"));
+ break;
+ case "KeyS":
+ oldestnewest(document.getElementById("newerscroller"));
+ break;
+ case "KeyJ":
+ scrollnexthonk();
+ break;
+ case "KeyK":
+ scrollprevioushonk();
+ break;
+ case "KeyM":
+ var menu = document.getElementById("topmenu")
+ if (!menu.open) {
+ menu.open = true
+ menu.querySelector("a").focus()
+ } else {
+ menu.open = false
+ }
+ break
+ case "Slash":
+ document.getElementById("topmenu").open = true
+ document.getElementById("searchbox").focus()
+ e.preventDefault()
+ break
+ }
+}
+
+(function() {
+ document.addEventListener("keydown", hotkey)
+ var totop = document.querySelector(".nophone")
+ if (totop) {
+ totop.onclick = function() {
+ window.scrollTo(0,0)
+ }
+ }
+ var els = document.getElementsByClassName("donklink")
+ while (els.length) {
+ let el = els[0]
+ el.onclick = function() {
+ el.classList.remove("donk")
+ el.onclick = null
+ return false
+ }
+ el.classList.remove("donklink")
+ }
+
+})()
M +1 -0
@@ 6,6 6,7 @@
{{ if .LocalStyleParam }}
<link href="/local.css{{ .LocalStyleParam }}" rel="stylesheet">
{{ end }}
<script src="/common.js{{ .CommonJSParam }}" defer></script>
{{ .APAltLink }}
{{ .Honkology }}
<link href="/icon.png" rel="icon">
M views/honkpage.js +0 -50
@@ 460,49 460,6 @@ function scrollprevioushonk() {
}
}
-function hotkey(e) {
- if (e.ctrlKey || e.altKey)
- return
- if (e.code == "Escape") {
- var menu = document.getElementById("topmenu")
- menu.open = false
- return
- }
- if (e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement)
- return
-
- switch (e.code) {
- case "KeyR":
- refreshhonks(document.getElementById("honkrefresher"));
- break;
- case "KeyS":
- oldestnewest(document.getElementById("newerscroller"));
- break;
- case "KeyJ":
- scrollnexthonk();
- break;
- case "KeyK":
- scrollprevioushonk();
- break;
- case "KeyM":
- var menu = document.getElementById("topmenu")
- if (!menu.open) {
- menu.open = true
- menu.querySelector("a").focus()
- } else {
- menu.open = false
- }
- break
- case "Slash":
- document.getElementById("topmenu").open = true
- document.getElementById("searchbox").focus()
- e.preventDefault()
- break
- }
-}
-
-document.addEventListener("keydown", hotkey)
-
function addemu(elem) {
const data = elem.alt
const box = document.getElementById("honknoise");
@@ 548,13 505,6 @@ function loademus() {
el = document.getElementById("longagolink")
el.onclick = pageswitcher("longago", "")
- var totop = document.querySelector(".nophone")
- if (totop) {
- totop.onclick = function() {
- window.scrollTo(0,0)
- }
- }
-
var refreshbox = document.getElementById("refreshbox")
if (refreshbox) {
refreshbox.querySelectorAll("button").forEach(function(el) {
M web.go +3 -0
@@ 88,6 88,7 @@ func getInfo(r *http.Request) map[string
templinfo := make(map[string]interface{})
templinfo["StyleParam"] = getassetparam(viewDir + "/views/style.css")
templinfo["LocalStyleParam"] = getassetparam(dataDir + "/views/local.css")
+ templinfo["CommonJSParam"] = getassetparam(viewDir + "/views/common.js")
templinfo["JSParam"] = getassetparam(viewDir + "/views/honkpage.js")
templinfo["MiscJSParam"] = getassetparam(viewDir + "/views/misc.js")
templinfo["LocalJSParam"] = getassetparam(dataDir + "/views/local.js")
@@ 3056,6 3057,7 @@ func serve() {
assets := []string{
viewDir + "/views/style.css",
dataDir + "/views/local.css",
+ viewDir + "/views/common.js",
viewDir + "/views/honkpage.js",
viewDir + "/views/misc.js",
dataDir + "/views/local.js",
@@ 3112,6 3114,7 @@ func serve() {
posters.HandleFunc("/csp-violation", fiveoh)
getters.HandleFunc("/style.css", serveviewasset)
+ getters.HandleFunc("/common.js", serveviewasset)
getters.HandleFunc("/honkpage.js", serveviewasset)
getters.HandleFunc("/misc.js", serveviewasset)
getters.HandleFunc("/local.css", servedataasset)