function insertAfter(node, referenceNode) {
	referenceNode.parentNode.insertBefore(node, referenceNode.nextSibling);
}
function loadGrins() {
	var grinsDiv = document.createElement('div');
	grinsDiv.id = 'wp_grins';
	grinsDiv.innerHTML = '<img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxdev.png" alt=">:)" onclick="grin(\'>:)\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxwink.png" alt=";)" onclick="grin(\';)\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/44.gif" alt=":yap:" onclick="grin(\':yap:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/wub.gif" alt=":wubs:" onclick="grin(\':wubs:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxwhistle.png" alt=":whistle:" onclick="grin(\':whistle:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/jittery.gif" alt=":twitch:" onclick="grin(\':twitch:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/sick.gif" alt=":sick:" onclick="grin(\':sick:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxcwy.png" alt=":sad:" onclick="grin(\':sad:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/icon_rolleyes.gif" alt=":roll:" onclick="grin(\':roll:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxrock.gif" alt=":rock:" onclick="grin(\':rock:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxheartbeat.gif" alt=":pph:" onclick="grin(\':pph:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxtongue.png" alt=":p" onclick="grin(\':p\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/cake.png" alt=":nom:" onclick="grin(\':nom:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxninja.png" alt=":ninja:" onclick="grin(\':ninja:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xrazz.gif" alt=":neener:" onclick="grin(\':neener:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxpissed.gif" alt=":grr:" onclick="grin(\':grr:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/icon_smile.gif" alt=":grin:" onclick="grin(\':grin:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxpuke.png" alt=":ew:" onclick="grin(\':ew:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxdunce.gif" alt=":duh:" onclick="grin(\':duh:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/drunk.gif" alt=":drunk:" onclick="grin(\':drunk:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/drama.gif" alt=":drama:" onclick="grin(\':drama:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxdoh.gif" alt=":doh:" onclick="grin(\':doh:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/cuppa.gif" alt=":cuppa:" onclick="grin(\':cuppa:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xcrazy.gif" alt=":crazy:" onclick="grin(\':crazy:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/icon_cool.gif" alt=":cool:" onclick="grin(\':cool:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/martini.gif" alt=":cocktail:" onclick="grin(\':cocktail:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/clap.gif" alt=":clap:" onclick="grin(\':clap:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/11.gif" alt=":box:" onclick="grin(\':box:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/icon_redface.gif" alt=":blush:" onclick="grin(\':blush:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/beer.png" alt=":beer:" onclick="grin(\':beer:\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxgrins.png" alt=":D" onclick="grin(\':D\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/smile.png" alt=":)" onclick="grin(\':)\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/icon_cry.gif" alt=":(" onclick="grin(\':(\');"/> <img src="http://www.midnightcliff.com/wp-includes/images/smilies/xxhug.gif" alt="*hugs*" onclick="grin(\'*hugs*\');"/> ';
	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, '&nbsp;' + tag + '&nbsp;');
			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();
	}
}
