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.ryokoshima.net/blog/wp-includes/images/smilies/heart_bounce.gif" alt=":heart:" onclick="grin(\':heart:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_big_grin.gif" alt=":big_grin:" onclick="grin(\':big_grin:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_blank.gif" alt=":blank:" onclick="grin(\':blank:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_blush.gif" alt=":blush:" onclick="grin(\':blush:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_cheering.gif" alt=":cheering:" onclick="grin(\':cheering:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_confused.gif" alt=":confused:" onclick="grin(\':confused:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_cool.gif" alt=":cool:" onclick="grin(\':cool:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_cry.gif" alt=":cry:" onclick="grin(\':cry:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_cute.gif" alt=":cute:" onclick="grin(\':cute:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_evil.gif" alt=":evil:" onclick="grin(\':evil:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_happy.gif" alt=":happy:" onclick="grin(\':happy:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_kiss.gif" alt=":kiss:" onclick="grin(\':kiss:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_laughing.gif" alt=":laughing:" onclick="grin(\':laughing:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_lol.gif" alt=":lol:" onclick="grin(\':lol:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_love.gif" alt=":love:" onclick="grin(\':love:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_mad.gif" alt=":mad:" onclick="grin(\':mad:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_mouth_shut.gif" alt=":mouth_shut:" onclick="grin(\':mouth_shut:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_no.gif" alt=":no:" onclick="grin(\':no:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_posh.gif" alt=":posh:" onclick="grin(\':posh:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_regular.gif" alt=":regular:" onclick="grin(\':regular:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_sad.gif" alt=":sad:" onclick="grin(\':sad:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_sick.gif" alt=":sick:" onclick="grin(\':sick:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_smile.gif" alt=":smile:" onclick="grin(\':smile:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_sweat.gif" alt=":sweat:" onclick="grin(\':sweat:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_tongue.gif" alt=":tongue:" onclick="grin(\':tongue:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_wink.gif" alt=":wink:" onclick="grin(\':wink:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kao_yes.gif" alt=":yes:" onclick="grin(\':yes:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/angry.gif" alt=">_<" onclick="grin(\'>_<\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/biggrin.gif" alt="=D" onclick="grin(\'=D\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/blank.gif" alt=":blank" onclick="grin(\':blank\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/blush.gif" alt=">/////<" onclick="grin(\'>/////<\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/content.gif" alt=":happy" onclick="grin(\':happy\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/cool.gif" alt="cool" onclick="grin(\'cool\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/cry.gif" alt="T_T" onclick="grin(\'T_T\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/devil.gif" alt=":evil" onclick="grin(\':evil\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/dodgy.gif" alt="-_-" onclick="grin(\'-_-\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/gasp.gif" alt="o_O" onclick="grin(\'o_O\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/huh.gif" alt=":~" onclick="grin(\':~\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/jumpy.gif" alt=":jumpy" onclick="grin(\':jumpy\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/kiss.gif" alt="^o^" onclick="grin(\'^o^\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/laugh.gif" alt=":youpi" onclick="grin(\':youpi\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/lol.gif" alt="lol" onclick="grin(\'lol\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/love.gif" alt=":love" onclick="grin(\':love\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/no.gif" alt=":no" onclick="grin(\':no\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/notfunny.gif" alt=":[" onclick="grin(\':[\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/omg.gif" alt="OMG" onclick="grin(\'OMG\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/regular.gif" alt=":)" onclick="grin(\':)\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/sad.gif" alt=":(" onclick="grin(\':(\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/sick.gif" alt="beurk" onclick="grin(\'beurk\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/silent.gif" alt=":x" onclick="grin(\':x\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/surprised.gif" alt="°o°" onclick="grin(\'°o°\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/tongue.gif" alt=":p" onclick="grin(\':p\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/wink.gif" alt=";)" onclick="grin(\';)\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/yes.gif" alt=":yes" onclick="grin(\':yes\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/yum.gif" alt="yumyum" onclick="grin(\'yumyum\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/ghost_exclaim.gif" alt=":!:" onclick="grin(\':!:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/ghost_kiss.gif" alt=":hug:" onclick="grin(\':hug:\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/ghost_wow.gif" alt="WOW" onclick="grin(\'WOW\');"/> <img src="http://www.ryokoshima.net/blog/wp-includes/images/smilies/ghost_dots.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();
	}
}
