diff options
Diffstat (limited to 'wiki.js')
-rw-r--r-- | wiki.js | 129 |
1 files changed, 0 insertions, 129 deletions
diff --git a/wiki.js b/wiki.js deleted file mode 100644 index 1d47062..0000000 --- a/wiki.js +++ /dev/null @@ -1,129 +0,0 @@ -function insert(text) { - var t = document.getElementsByName('t')[0]; - if(!t) return; - if(t.selectionStart || t.selectionStart == '0') { - var pos = t.selectionStart; - var end = t.selectionEnd; - t.value = t.value.substring(0, pos) + text + t.value.substring(end, t.value.length); - } - t.focus(); - var cpos = t.selectionStart; - t.setSelectionRange(cpos, cpos); -} - -function wrap(prefix, postfix) { - var t = document.getElementsByName('t')[0]; - if(!t) return; - if(t.selectionStart || t.selectionStart == '0') { - var pos = t.selectionStart; - var end = t.selectionEnd; - var n = t.value.indexOf("\n", pos); - if(n > 0 && n < end) end = n; - t.value = t.value.substring(0, pos) + prefix + t.value.substring(pos, end) + postfix + t.value.substring(end, t.value.length); - } - t.focus(); - var cpos = t.selectionEnd + prefix.length + postfix.length; - t.setSelectionRange(cpos, cpos); -} - -function prepend(text) { - var t = document.getElementsByName('t')[0]; - if(!t) return; - if(t.selectionStart || t.selectionStart == '0') { - var pos = t.selectionStart; - var end = t.selectionEnd; - for(;pos < end; pos++) { - if(t.value.charAt(pos) != "\n") break; - } - for(;end > pos; end--) { - if(t.value.charAt(end - 1) != "\n") break; - } - var quote = ""; - var cpos = end; - if(t.value.charAt(pos - 1) != "\n") { - quote += "\n"; - cpos += 1; - } - if(pos == end) { - quote += text; - cpos += text.length; - } else { - var lines = t.value.substring(pos, end).split("\n"); - for(var i=0; i < lines.length; i++) { - quote += text + lines[i] + "\n"; - cpos += text.length; - } - quote = quote.slice(0, -1); - } - t.value = t.value.substring(0, pos) + quote + t.value.substring(end, t.value.length); - } - t.focus(); - t.setSelectionRange(cpos, cpos); -} - -function marxup_bold(e) { - wrap("*", "*"); -} - -function marxup_header(e) { - prepend("= "); -} - -function marxup_italics(e) { - wrap("_", "_"); -} - -function marxup_link(e) { - wrap("[", "]"); -} - -function marxup_quote(e) { - prepend("> "); -} - -function marxup_list(e) { - prepend("* "); -} - -function button(node, html, fun) { - var a = document.createElement("a"); - a.innerHTML = html; - a.href = "#"; - a.onclick = fun; - node.parentNode.insertBefore(a, node.nextSibling); -} - -function orz(src) { - insert("\n@" + src.replace(".t.jpg", "") + "\n"); -} - -document.addEventListener("DOMContentLoaded", function(e) { - var title = document.getElementsByTagName('h1')[0]; - var headers = document.getElementsByTagName("h2"); - if(headers.length > 0) { - var menu = document.createElement("div"); menu.className = 'magisk meny'; - for(var i = 0; i < headers.length; i++) { - var a = document.createElement("a"); - var id = "h-" + i; headers[i].id = id; a.href = "#" + id; - a.textContent = headers[i].textContent; - menu.appendChild(a); - menu.appendChild(document.createElement("br")); - } - title.parentNode.insertBefore(menu, title.nextSibling); - } - - var orz = document.getElementById('orz'); - if(orz) { - orz.onclick = function(e) { - window.open("/orz"); - return false; - } - button(orz, "> sitat", marxup_quote); - button(orz, "* liste", marxup_list); - button(orz, "[lenke]", marxup_link); - button(orz, "<i>_kursiv_</i>", marxup_italics); - button(orz, "<b>*fet*</b>", marxup_bold); - button(orz, "= overskrift", marxup_header); - } -}); - |