function insertAfter(node, referenceNode) { referenceNode.parentNode.insertBefore(node, referenceNode.nextSibling); } function loadGrins() { var grinsDiv = document.createElement('div'); grinsDiv.id = 'wp_grins'; grinsDiv.innerHTML = ';-) :| :zero: :x :wobbly: :wink: :weep: :two: :twisted: :thunder: :three: :think: :sweat02: :sweat01: :sun: :snow: :smile: :sleepy: :six: :sign03: :sign02: :sign01: :shock: :seven: :scissors: :sad: :roll: :rock: :razz: :rain: :punch: :pout: :paper: :oops: :one: :o :notes: :note: :nine: :night: :newmoon: :mrgreen: :moon3: :moon2: :moon1: :lovely: :lol: :impact: :idea: :heart: :heart04: :heart03: :heart02: :heart01: :happy02: :happy01: :grin: :good: :gawk: :fullmoon: :four: :flair: :five: :eye: :evil: :eight: :ear: :despair: :delicious: :dash: :crying: :cry: :cool: :confident: :coldsweats02: :coldsweats01: :cloud: :catface: :bleah: :bearing: :arrow: :annoy: :angry: :???: :?: :-) :-( :!: 8O '; if ($('postdiv')) { var type = 'child'; var node = $('postdiv'); } else if (document.getElementById('postdivrich')) { var type = 'child'; var node = $('postdivrich'); } else if (document.getElementById('comment')) { var type = 'before'; var node = $('comment'); } else { return; } switch (type) { case 'child': grinsDiv.style.paddingTop = '5px'; node.appendChild(grinsDiv); break; case 'before': node.parentNode.insertBefore(grinsDiv, node); break; } } Event.observe(window, 'load', loadGrins, false); function grin(tag) { var myField; if ($('content') && $('content').type == 'textarea') { myField = document.getElementById('content'); if ($('postdivrich') && typeof tinyMCE != 'undefined' && (!$('edButtons') || $('quicktags').style.display == 'none')) { tinyMCE.execInstanceCommand('mce_editor_0', 'mceInsertContent', false, ' ' + tag + ' '); tinyMCE.selectedInstance.repaint(); return; } } else if ($('comment') && $('comment').type == 'textarea') { myField = $('comment'); } else { return false; } if (document.selection) { myField.focus(); sel = document.selection.createRange(); sel.text = ' ' + tag + ' '; myField.focus(); } else if (myField.selectionStart || myField.selectionStart == '0') { var startPos = myField.selectionStart; var endPos = myField.selectionEnd; var cursorPos = endPos; myField.value = myField.value.substring(0, startPos) + ' ' + tag + ' ' + myField.value.substring(endPos, myField.value.length); cursorPos += tag.length + 2; myField.focus(); myField.selectionStart = cursorPos; myField.selectionEnd = cursorPos; } else { myField.value += tag; myField.focus(); } }