/* emg えも～じ ver 1.2 絵文字ポップ入力 1.0 poor-script.com */
$(document).ready(function(){
	//emgpop_close.gifのパス
	var pop="<div id=\"emg_pop_window\">";
	pop+="<h1><img src=\"images/emgpop_close.gif\" alt=\"\" width=\"17\" height=\"17\" onclick=\"emgpop.pop(null)\" /></h1>";
	pop+="<table cellspacing=\"0\" cellpadding=\"0\" id=\"emg_pop_table\">";
	pop+="<thead><tr><td>キャリアの選択：<select id=\"emg_career_select\" onchange=\"emgpop.getPage()\">";
	pop+="<option value=\"docomo\" label=\"docomo\">docomo</option>";
	pop+="<option value=\"au\" label=\"au\">au</option>";
	pop+="<option value=\"softbank\" label=\"softbank\">softbank</option>";
	pop+="<option value=\"willcom\" label=\"willcom\">willcom</option>";
	pop+="<option value=\"emobile\" label=\"emobile\">emobile</option>";
	pop+="</select></td></tr></thead>";
	pop+="<tbody><tr><td><div id=\"emg_pop_tab\"></div><br id=\"emg_pop_clear\" /><div id=\"emg_pop_images\"></div></td></tr></tbody></table>";
	pop+="</div>";
	$("body").append(pop);
	try{$("#emg_pop_window").draggable({ handle:"h1"});}catch(e){}
});
var emgpop={
	//// 入力ハンドラーphpのパス
	php:"emgpop.php",
	//// ローディング画像とか
	loading:"<img src=\"images/emgpop_loading.gif\" width=\"76\" height=\"45\" alt=\"Now Loading . . .\" />",
	target:undefined,
	init:false,
	tab:function(n){
		$("#emg_pop_images > div:not(:eq("+n+"))").hide();
		$("#emg_pop_images > div:eq("+n+")").show();
		$("#emg_pop_tab > a:not(:eq("+n+"))").css("background-color", "#F0F8FF").css("border-top", "1px #CCCCCC solid");
		$("#emg_pop_tab > a:eq("+n+")").css("background-color", "#FFFFFF").css("border-top", "1px #FF6633 solid");
	},
	bindImgEvent:function(){
		$("#emg_pop_images img").each(function(){
			$(this).mouseover(function(){
				$(this).css("border-color", "#FF3322");
			});
			$(this).mouseout(function(){
				$(this).css("border-color", "#FFFFFF");
			});
		});
	},
	pasteImg:function(img){
		var alt=img.alt.split(":");
		emgpop.getEmg("img",alt[0],alt[1]);
	},
	pasteTag:function(img){
		var alt=img.alt.split(":");
		emgpop.getEmg("tag",alt[0],alt[1]);
	},
	getRange:function(obj){
		var pos={start:0,end:0};
		if($.browser.msie){
			obj.focus();
			var range=document.selection.createRange();
			var clone=range.duplicate();
			clone.moveToElementText(obj);
			clone.setEndPoint('EndToEnd', range);
			pos.start=clone.text.length - range.text.length;
			pos.end=clone.text.length - range.text.length + range.text.length;
		}else if(window.getSelection()) {
			pos.start=obj.selectionStart;
			pos.end=obj.selectionEnd;
		}
		return pos;
	},
	inputEmg:function(text){
		var target=emgpop.target.get(0);
		var pos=emgpop.getRange(target);
		var beforeNode=target.value.slice(0, pos.start);
		var afterNode=target.value.slice(pos.end);
		target.value=beforeNode + text + afterNode;
	},
	getEmg:function(mode,c,i){
		$.get(emgpop.php,{mode:mode,career:c,id:i},emgpop.inputEmg);
	},
	getPage:function(){
		$("#emg_pop_images").html(emgpop.loading);
		var c=$("#emg_career_select option:selected").attr("value");
		$.getJSON(emgpop.php,{mode:"page",career:c},emgpop.page);
	},
	page:function(json){
		$("#emg_pop_tab").html(json.tab);
		$("#emg_pop_images").html(json.imgs);
		emgpop.bindImgEvent();
	},
	pop:function(target){
		$("#emg_pop_window").toggle();
		if(target){
			emgpop.target=$(target);
			var p=emgpop.target.position();
			$("#emg_pop_window").css("top",p.top+20+$(document).scrollTop()).css("left",p.left+20+$(document).scrollLeft());
		}else{
			emgpop.target=undefined;
		}
		if(!emgpop.init){
			emgpop.init=true;
			emgpop.getPage();
		}
	}
}
