	function isaIE5() { return (navigator.userAgent.indexOf("MSIE 5") > -1); }
	function isaIE6() { return ((navigator.userAgent.indexOf("MSIE 6") > -1) && (navigator.userAgent.indexOf("Opera") == -1)); }
	function isaIE7() { return ((navigator.userAgent.indexOf("MSIE 7") > -1) && (navigator.userAgent.indexOf("Opera") == -1)); }
	function isaIE() { return (isaIE5() || isaIE6() || isaIE7()); }
	
    function getPosS(insField)
    {
	  insPosL=insField.selectionStart;
      return insPosL;
    }
    
    function getPosF(insField)
    {
      insPosR=insField.selectionEnd;
      return insPosR;
    }
    
	function add_smile(s, area){
		var p = document.getElementById(area);
		if(isaIE()){
			s=' '+s+' ';
			var text = document.selection.createRange().text;
			p.focus();
			document.selection.createRange().text = s+text;
			p.focus();		
		} else {
			text=p.value;
			x=getPosS(p);
			x2=getPosF(p);
			text_left=text.substring(0,x);
			text_right=text.substring(x2,10000);
			p.value=text_left+' '+s+' '+text_right;
	        p.selectionStart=x+s.length+2;
            p.selectionEnd=x+s.length+2;
			p.focus();
		}
	}