/******************************************************************************
  so-net blog用コメント絵文字機能追加スクリプト　Ver.1.2

  revision: 1.0 create
            1.1 for safari2.0.3 and secret images
            1.2 not change images in case of big size

  http://youmode.blog.so-net.ne.jp/

  画像入手先 http://pepper.oops.jp/
******************************************************************************/

imgList = new Array();

function setImgList() {
	imgList[imgList.length] = new Array("男の子","http://www010.upp.so-net.ne.jp/choba/blog/1.gif");
	imgList[imgList.length] = new Array("女の子","http://www010.upp.so-net.ne.jp/choba/blog/2.gif");
	imgList[imgList.length] = new Array("携帯","http://www010.upp.so-net.ne.jp/choba/blog/3.gif");
	imgList[imgList.length] = new Array("パソコン","http://www010.upp.so-net.ne.jp/choba/blog/4.gif");
	imgList[imgList.length] = new Array("メール","http://www010.upp.so-net.ne.jp/choba/blog/97.gif");
	imgList[imgList.length] = new Array("ファイト","http://www010.upp.so-net.ne.jp/choba/blog/5.gif");
	imgList[imgList.length] = new Array("ナイス","http://www010.upp.so-net.ne.jp/choba/blog/6.gif");
	imgList[imgList.length] = new Array("グー","http://www010.upp.so-net.ne.jp/choba/blog/7.gif");
	imgList[imgList.length] = new Array("チョキ","http://www010.upp.so-net.ne.jp/choba/blog/8.gif");
	imgList[imgList.length] = new Array("パー","http://www010.upp.so-net.ne.jp/choba/blog/9.gif");
	imgList[imgList.length] = new Array("くるま","http://www010.upp.so-net.ne.jp/choba/blog/10.gif");
	imgList[imgList.length] = new Array("ひこうき","http://www010.upp.so-net.ne.jp/choba/blog/11.gif");
	imgList[imgList.length] = new Array("でんしゃ","http://www010.upp.so-net.ne.jp/choba/blog/12.gif");
	imgList[imgList.length] = new Array("？","http://www010.upp.so-net.ne.jp/choba/blog/13.gif");
	imgList[imgList.length] = new Array("！","http://www010.upp.so-net.ne.jp/choba/blog/14.gif");
	imgList[imgList.length] = new Array("ハート","http://www010.upp.so-net.ne.jp/choba/blog/15.gif");
	imgList[imgList.length] = new Array("とけい","http://www010.upp.so-net.ne.jp/choba/blog/16.gif");
	imgList[imgList.length] = new Array("マイク","http://www010.upp.so-net.ne.jp/choba/blog/18.gif");
	imgList[imgList.length] = new Array("♪","http://www010.upp.so-net.ne.jp/choba/blog/19.gif");
	imgList[imgList.length] = new Array("しょくじ","http://www010.upp.so-net.ne.jp/choba/blog/20.gif");

	imgList[imgList.length] = new Array("ケーキ","http://www010.upp.so-net.ne.jp/choba/blog/21.gif");
	imgList[imgList.length] = new Array("ビール","http://www010.upp.so-net.ne.jp/choba/blog/22.gif");
	imgList[imgList.length] = new Array("ゆき","http://www010.upp.so-net.ne.jp/choba/blog/23.gif");
	imgList[imgList.length] = new Array("くもり","http://www010.upp.so-net.ne.jp/choba/blog/24.gif");
	imgList[imgList.length] = new Array("はれ","http://www010.upp.so-net.ne.jp/choba/blog/25.gif");
	imgList[imgList.length] = new Array("あめ","http://www010.upp.so-net.ne.jp/choba/blog/52.gif");
	imgList[imgList.length] = new Array("つき","http://www010.upp.so-net.ne.jp/choba/blog/26.gif");
	imgList[imgList.length] = new Array("ねこ","http://www010.upp.so-net.ne.jp/choba/blog/28.gif");
	imgList[imgList.length] = new Array("ねずみ","http://www010.upp.so-net.ne.jp/choba/blog/29.gif");
	imgList[imgList.length] = new Array("くま","http://www010.upp.so-net.ne.jp/choba/blog/51.gif");
	imgList[imgList.length] = new Array("ニコ","http://www010.upp.so-net.ne.jp/choba/blog/30.gif");
	imgList[imgList.length] = new Array("ニコニコ","http://www010.upp.so-net.ne.jp/choba/blog/31.gif");
	imgList[imgList.length] = new Array("ブー","http://www010.upp.so-net.ne.jp/choba/blog/32.gif");

	imgList[imgList.length] = new Array("シュン","http://www010.upp.so-net.ne.jp/choba/blog/33.gif");
	imgList[imgList.length] = new Array("プレゼント","http://www010.upp.so-net.ne.jp/choba/blog/34.gif");
	imgList[imgList.length] = new Array("でんきゅう","http://www010.upp.so-net.ne.jp/choba/blog/36.gif");
	imgList[imgList.length] = new Array("＄","http://www010.upp.so-net.ne.jp/choba/blog/53.gif");
	imgList[imgList.length] = new Array("ドクロ","http://www010.upp.so-net.ne.jp/choba/blog/37.gif");
	imgList[imgList.length] = new Array("おんせん","http://www010.upp.so-net.ne.jp/choba/blog/38.gif");
	imgList[imgList.length] = new Array("かんらんしゃ","http://www010.upp.so-net.ne.jp/choba/blog/39.gif");
	imgList[imgList.length] = new Array("CD","http://www010.upp.so-net.ne.jp/choba/blog/40.gif");
	imgList[imgList.length] = new Array("DVD","http://www010.upp.so-net.ne.jp/choba/blog/41.gif");
	imgList[imgList.length] = new Array("Zzz","http://www010.upp.so-net.ne.jp/choba/blog/42.gif");
	imgList[imgList.length] = new Array("ハンバーガー","http://www010.upp.so-net.ne.jp/choba/blog/43.gif");


	// 43

	imgList[imgList.length] = new Array("ツリー","http://www010.upp.so-net.ne.jp/choba/blog/44.gif");
	imgList[imgList.length] = new Array("クローバー","http://www010.upp.so-net.ne.jp/choba/blog/45.gif");
	imgList[imgList.length] = new Array("Windows1","http://www010.upp.so-net.ne.jp/choba/blog/46.gif");
	imgList[imgList.length] = new Array("Mac","http://www010.upp.so-net.ne.jp/choba/blog/47.gif");
	imgList[imgList.length] = new Array("Windows2","http://www010.upp.so-net.ne.jp/choba/blog/48.gif");
	imgList[imgList.length] = new Array("IE","http://www010.upp.so-net.ne.jp/choba/blog/49.gif");
	imgList[imgList.length] = new Array("Netscape","http://www010.upp.so-net.ne.jp/choba/blog/50.gif");
	imgList[imgList.length] = new Array("おうち","http://www010.upp.so-net.ne.jp/choba/blog/17.gif");
	imgList[imgList.length] = new Array("不思議な箱","http://www010.upp.so-net.ne.jp/choba/blog/hako.gif");
	imgList[imgList.length] = new Array("不思議な箱10","http://www010.upp.so-net.ne.jp/choba/blog/hako10.gif");
	imgList[imgList.length] = new Array("不思議な箱20","http://www010.upp.so-net.ne.jp/choba/blog/hako20.gif");
}

setImgList();

img = new Array();

for (i=0; i < imgList.length; i++) {
	img[i] = new Image();
	img[i].src = imgList[i][1];
}

/* コメントエリアに絵文字アイコンを挿入 */
function cmtEdit() {
	var limit = 54;
	//var imgText = "<dd>";
	var imgText = "";
	for (i=0; i < imgList.length; i++) {
		imgText += "<a href='javascript:;' onClick='addImageTag("+i+");'><img border='0' src='"+imgList[i][1]+"' name='img"+i+"' alt=\""+imgList[i][0]+"\" /></a>";
		//imgText += "<a href='javascript:;' onClick='addImageTag("+i+");'><img border='0' name='img"+i+"' alt=\""+imgList[i][0]+"\" /></a>";
		if (i==28 || i==54) imgText += "<br>";
		if (i==limit) break;
	}
	//imgText += "</dd>";
	obj = document.getElementById("comment-write").innerHTML;
	//document.getElementById("comment-write").innerHTML = obj.replace(/(<.*コメント：)/i,"<td><a class=\"site_title\" href=\"http://musashi.s201.xrea.com/\" target=\"_blank\"><img border=\"0\" src=\"http://www010.upp.so-net.ne.jp/choba/blog/memo.gif\" alt=\"むちゃとアプルの1日。\" /></a></td><td>"+imgText+"</td>\r\n\t\t</tr><tr>\r\n\t\t\t\t$1");
	if (obj.match(/(<dt.*コメント：)/i)) {
		document.getElementById("comment-write").innerHTML = obj.replace(/(<dt.*コメント：)/i,"<dt><a class=\"site_title\" href=\"http://musashi.s201.xrea.com/\" target=\"_blank\"><img border=\"0\" src=\"http://www010.upp.so-net.ne.jp/choba/blog/memo.gif\" alt=\"by むちゃとアプルの1日。\" /></a></dt><dd>"+imgText+"<small>original script <a href=\"http://blog.so-net.ne.jp/youmode/2006-06-03\" target=\"_blank\">youmode</a> Material <a href=\"http://1kb-sozai.com/\" target=\"_blank\">1キロバイトの素材屋さん</a></small></dd>\r\n\t\t\t\t$1");
	} else {
		document.getElementById("comment-write").innerHTML = obj.replace(/(<td.*コメント：)/i,"<td><a class=\"site_title\" href=\"http://musashi.s201.xrea.com/\" target=\"_blank\"><img border=\"0\" src=\"http://www010.upp.so-net.ne.jp/choba/blog/memo.gif\" alt=\"むちゃとアプルの1日。\" /></a></td><td>"+imgText+"</td>\r\n\t\t\t\t\t\</tr>\r\n\t\t\t\t\t\t\t$1");
	}

	for (i=0; i < limit+1; i++) {
		setImage("img"+i, img[i].src);
	}
}

/* コメントを絵文字に変換 */
function cmtChange() {
	c_obj = document.getElementById("comments").innerHTML;
	for (i=0; i < imgList.length; i++) {
		rep = '\\['+imgList[i][0]+'\\]';
		re = new RegExp(rep, "g");
		document.getElementById("comments").innerHTML = c_obj.replace(re, "<img style='vertical-align:middle;float:none;margin:0 0' src='"+imgList[i][1]+"' />");
		c_obj = document.getElementById("comments").innerHTML;
	}
}

/* 絵文字をセット */
function setImage(name, src) {
	if (document.images) {
		//document.images[name].src = src;
	}
}

/* テキストエリアにタグを挿入 */
function addImageTag(no) {
	var f = document.forms[2].article_child__body;
	var tag = "["+imgList[no][0]+"]";
	if (document.selection) {
		f.focus();
		var sel = document.selection.createRange();
		sel.text = tag;
	} else if (f.selectionStart || f.selectionStart == '0') {
		var startPos = f.selectionStart;
		var endPos = f.selectionEnd;
		f.value = f.value.substring(0, startPos) + tag + f.value.substring(endPos);
	} else {
		f.value += tag;
	}
}

/* onload */
function onloadH(e) {
	var blogElements = document.getElementsByTagName("div");
	for (i = 0; i < blogElements.length; i++) {
		if (blogElements[i].id == "comment-write") {
			cmtEdit();
			//コメント量が多ければ変換しない
			var cid = "comments";
			c_obj = document.getElementById(cid).innerHTML;
			//alert(c_obj.length);
			if (c_obj.length > 7620) {
				rep = '(<H4.*/H4>)';
				re = new RegExp(rep, "i");
				document.getElementById(cid).innerHTML = c_obj.replace(re, "$1<input type=\"button\" value=\"絵文字変換\" onClick=\"cmtChange('comments')\">（※PCスペックが低いと時間がかかる場合があります。）");
			} else {
				cmtChange("comments");
			}
			break;
		}
	}
	return true;
}

window.onload = onloadH;

