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);
} else {
t.value += s;
}
}
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 marxup_bold(e) {
wrap("*", "*");
}
function marxup_header(e) {
wrap("= ", "");
}
function marxup_italics(e) {
wrap("_", "_");
}
function marxup_link(e) {
wrap("[", "]");
}
function marxup_quote(e) {
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;
}
var quote = "";
var lines = t.value.substring(pos, end).split("\n");
var cpos = end;
for(var i=0; i < lines.length; i++) {
if(lines[i].length > 0) {
quote += "\n> " + lines[i];
cpos += 2;
}
}
if(t.value.substring(pos - 1, pos) == "\n")
quote = quote.trim() + "\n";
t.value = t.value.substring(0, pos) + quote + t.value.substring(end, t.value.length);
}
t.focus();
t.setSelectionRange(cpos, cpos);
}
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 pick(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, "[lenke]", marxup_link);
button(orz, "_kursiv_", marxup_italics);
button(orz, "*fet*", marxup_bold);
button(orz, "= overskrift", marxup_header);
}
});