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://hterry.com/wp-includes/images/smilies/icon_bluewink.gif" alt=";-)" onclick="grin(\';-)\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_yin-yang.gif" alt=":yinyang:" onclick="grin(\':yinyang:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluemad.gif" alt=":x" onclick="grin(\':x\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_blueuhh.gif" alt=":uhh:" onclick="grin(\':uhh:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_tux.gif" alt=":tux:" onclick="grin(\':tux:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_star.gif" alt=":star:" onclick="grin(\':star:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluesmile.gif" alt=":smile:" onclick="grin(\':smile:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluesick.gif" alt=":sick:" onclick="grin(\':sick:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_blueshocked.gif" alt=":shock:" onclick="grin(\':shock:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluesad.gif" alt=":sad:" onclick="grin(\':sad:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluetongue.gif" alt=":razz:" onclick="grin(\':razz:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_present.gif" alt=":present:" onclick="grin(\':present:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluepirate.gif" alt=":pirate:" onclick="grin(\':pirate:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluewacko.gif" alt=":o" onclick="grin(\':o\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_note.gif" alt=":note:" onclick="grin(\':note:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluenono.gif" alt=":nono:" onclick="grin(\':nono:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_mrgreen.gif" alt=":mrgreen:" onclick="grin(\':mrgreen:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_island.gif" alt=":island:" onclick="grin(\':island:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bulb.gif" alt=":idea:" onclick="grin(\':idea:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_heart.gif" alt=":heart:" onclick="grin(\':heart:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluebiggrin.gif" alt=":grin:" onclick="grin(\':grin:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_frog.gif" alt=":frog:" onclick="grin(\':frog:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_martini.gif" alt=":drink:" onclick="grin(\':drink:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluecry.gif" alt=":cry:" onclick="grin(\':cry:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_cookie.gif" alt=":cookie:" onclick="grin(\':cookie:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_coffee.gif" alt=":coffee:" onclick="grin(\':coffee:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_clover.gif" alt=":clover:" onclick="grin(\':clover:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_cigarette.gif" alt=":cig:" onclick="grin(\':cig:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_car.gif" alt=":car:" onclick="grin(\':car:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_boat.gif" alt=":boat:" onclick="grin(\':boat:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_beer.gif" alt=":beer:" onclick="grin(\':beer:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_blueartist.gif" alt=":artist:" onclick="grin(\':artist:\');"/> <img src="http://hterry.com/wp-includes/images/smilies/icon_bluedizzy.gif" alt=":???:" onclick="grin(\':???:\');"/> ';
	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();
	}
}
