var emoji = function(){
	var binary = ["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""];
	var unicode = ["&#xE63E;","&#xE63F;","&#xE640;","&#xE641;","&#xE642;","&#xE643;","&#xE644;","&#xE645;","&#xE646;","&#xE647;","&#xE648;","&#xE649;","&#xE64A;","&#xE64B;","&#xE64C;","&#xE64D;","&#xE64E;","&#xE64F;","&#xE650;","&#xE651;","&#xE652;","&#xE653;","&#xE654;","&#xE655;","&#xE656;","&#xE657;","&#xE658;","&#xE659;","&#xE65A;","&#xE65B;","&#xE65C;","&#xE65D;","&#xE65E;","&#xE65F;","&#xE660;","&#xE661;","&#xE662;","&#xE663;","&#xE664;","&#xE665;","&#xE666;","&#xE667;","&#xE668;","&#xE669;","&#xE66A;","&#xE66B;","&#xE66C;","&#xE66D;","&#xE66E;","&#xE66F;","&#xE670;","&#xE671;","&#xE672;","&#xE673;","&#xE674;","&#xE675;","&#xE676;","&#xE677;","&#xE678;","&#xE679;","&#xE67A;","&#xE67B;","&#xE67C;","&#xE67D;","&#xE67E;","&#xE67F;","&#xE680;","&#xE681;","&#xE682;","&#xE683;","&#xE684;","&#xE685;","&#xE686;","&#xE687;","&#xE688;","&#xE689;","&#xE68A;","&#xE68B;","&#xE68C;","&#xE68D;","&#xE68E;","&#xE68F;","&#xE690;","&#xE691;","&#xE692;","&#xE693;","&#xE694;","&#xE695;","&#xE696;","&#xE697;","&#xE698;","&#xE699;","&#xE69A;","&#xE69B;","&#xE69C;","&#xE69D;","&#xE69E;","&#xE69F;","&#xE6A0;","&#xE6A1;","&#xE6A2;","&#xE6A3;","&#xE6A4;","&#xE6A5;","&#xE6AC;","&#xE6AD;","&#xE6AE;","&#xE6B1;","&#xE6B2;","&#xE6B3;","&#xE6B7;","&#xE6B8;","&#xE6B9;","&#xE6BA;","&#xE6CE;","&#xE6CF;","&#xE6D0;","&#xE6D1;","&#xE6D2;","&#xE6D3;","&#xE6D4;","&#xE6D5;","&#xE6D6;","&#xE6D7;","&#xE6D8;","&#xE6D9;","&#xE6DA;","&#xE6DB;","&#xE6DC;","&#xE6DD;","&#xE6DE;","&#xE6DF;","&#xE6E0;","&#xE6E1;","&#xE6E2;","&#xE6E3;","&#xE6E4;","&#xE6E5;","&#xE6E6;","&#xE6E7;","&#xE6E8;","&#xE6E9;","&#xE6EA;","&#xE6EB;","&#xE6EC;","&#xE6ED;","&#xE6EE;","&#xE6EF;","&#xE6F0;","&#xE6F1;","&#xE6F2;","&#xE6F3;","&#xE6F4;","&#xE6F5;","&#xE6F6;","&#xE6F7;","&#xE6F8;","&#xE6F9;","&#xE6FA;","&#xE6FB;","&#xE6FC;","&#xE6FD;","&#xE6FE;","&#xE6FF;","&#xE700;","&#xE701;","&#xE702;","&#xE703;","&#xE704;","&#xE705;","&#xE706;","&#xE707;","&#xE708;","&#xE709;","&#xE70A;","&#xE70B;","&#xE70C;","&#xE70D;","&#xE70E;","&#xE70F;","&#xE710;","&#xE711;","&#xE712;","&#xE713;","&#xE714;","&#xE715;","&#xE716;","&#xE717;","&#xE718;","&#xE719;","&#xE71A;","&#xE71B;","&#xE71C;","&#xE71D;","&#xE71E;","&#xE71F;","&#xE720;","&#xE721;","&#xE722;","&#xE723;","&#xE724;","&#xE725;","&#xE726;","&#xE727;","&#xE728;","&#xE729;","&#xE72A;","&#xE72B;","&#xE72C;","&#xE72D;","&#xE72E;","&#xE72F;","&#xE730;","&#xE731;","&#xE732;","&#xE733;","&#xE734;","&#xE735;","&#xE736;","&#xE737;","&#xE738;","&#xE739;","&#xE73A;","&#xE73B;","&#xE73C;","&#xE73D;","&#xE73E;","&#xE73F;","&#xE740;","&#xE741;","&#xE742;","&#xE743;","&#xE744;","&#xE745;","&#xE746;","&#xE747;","&#xE748;","&#xE749;","&#xE74A;","&#xE74B;","&#xE74C;","&#xE74D;","&#xE74E;","&#xE74F;","&#xE750;","&#xE751;","&#xE752;","&#xE753;","&#xE754;","&#xE755;","&#xE756;","&#xE757;"];
	var setup = function(){
		createEmojiTable();     
	};
	var createRadioButton = function(){
		var radioHtml = ('<div id="radio" style="color:#fff;margin-left:7px">binary<input type="radio" name="code" value="binary" checked="checked">');
		radioHtml += ('unicode<input type="radio" name="code" value="unicode"></div>');
		return radioHtml;
	}
	var createEmojiTable = function(){
		var radioHtml = createRadioButton();
		var tableHtml = ('<table id="emoji" border="0">');
		for(h=1;h<=16;h=h+1){
			tableHtml += ("<tr>");
			for(w=1;w<=16;w=w+1){
				id = (h-1)*16+w;
				tableHtml += ('<td id="no'+id+'">');
				tableHtml += ("</td>");
			}
			tableHtml += ("</tr>");
		}
		tableHtml += ("</table>");
		$("#emojitable").append(radioHtml + tableHtml);
		//$("#emojitable td").css("border","0");
		$("#emojitable td").css("background-image",'url("images/emoji.gif")');
		$("#emojitable td").css("width","26px");
		$("#emojitable td").css("height","26px");
		$("#emojitable").css("width","430px");
		$("#emojitable").css("height","450px");
		$("#emojitable").css("background-color","#666");
		$("#emojitable table").css("margin","7px auto 7px auto");
		$("#emojitable table").css("border-collapse","collapse");
		for(i=0;i<=256;i=i+1){
			var xposi = (i-1)*26-(Math.floor((i-1)/16)*416);
			var yposi = Math.floor((i-1)/16)*26;
			$("#emojitable #no"+i).css("background-position","-"+xposi+"px -"+yposi+"px");		
		}
		mouseAction();
	};
	var mouseAction = function(){
		$("#emojitable td").hover(function(){
			var i = this.id.substr(2);
			var xposi = (i-1)*26-(Math.floor((i-1)/16)*416);
			var yposi = Math.floor((i-1)/16)*26+417;
			$("#emojitable #no"+i).css("background-position","-"+xposi+"px -"+yposi+"px");
		},function(){
			var i = this.id.substr(2);
			var xposi = (i-1)*26-(Math.floor((i-1)/16)*416);
			var yposi = Math.floor((i-1)/16)*26;
			$("#emojitable #no"+i).css("background-position","-"+xposi+"px -"+yposi+"px");
		});
		$("#emojitable td").mousedown(function(){
			var i = this.id.substr(2);
			var xposi = (i-1)*26-(Math.floor((i-1)/16)*416);
			var yposi = Math.floor((i-1)/16)*26+833;
			$("#emojitable #no"+i).css("background-position","-"+xposi+"px -"+yposi+"px");
			//alert(unicode[i-1]);
			textEntry(i);
		});
		$("#emojitable td").mouseup(function(){
			var i = this.id.substr(2);
			var xposi = (i-1)*26-(Math.floor((i-1)/16)*416);
			var yposi = Math.floor((i-1)/16)*26+417;
			$("#emojitable #no"+i).css("background-position","-"+xposi+"px -"+yposi+"px");
		});
		$('#emojitable').draggable('enable');
		$('#drag').draggable('enable');
		$('#clear').click(function(){$('#entry2:input').val("");});
	};
	var textEntry = function(i){
		var type = $('#radio :checked').val();
		var txt = ($('#entry2:input').val());
		$('#entry2:input').val("");
		$('#entry2:input').val(txt+eval(type)[i-1]);
		//alert(i);
	};
	return {
		init : function(){
			setup();
		},
		change : function(obj){
		}

		
	};
}();
$(function(){
	emoji.init();
/*	$("#channel a").click(function(){
		emoji.change($(this));
		return false;
	});	
*/
});