function createIMRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
}

var imhttp = createIMRequestObject();
var imlastMsg = 0;
var im_refuid = '';
function getUserList() {
    imhttp.open('get', 'im_prog.php?a=ping');
    document.getElementById('userList').innerHTML="&nbsp;&nbsp;Loading...";
    imhttp.onreadystatechange = IMhandleResponse;
    imhttp.send(null);
	document.getElementById('msgArea').scrollTop = document.getElementById('msgArea').scrollHeight;
	setTimeout("getUserList()",(im_refresh_interval * 1000));
}

function sendMsg() {
	var msg1 = document.getElementById('im_msg').value;
	if (msg1.length > im_msg_length) {
		alert(im_msg_long); return false;
	}
	var msg=encodeURIComponent(msg1.replace(/&/g, "|amp|"));
	imhttp.open('POST',"im_prog.php",false);
	imhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	imhttp.send("a=sendMsg&refuid="+im_refuid+"&msg="+msg);
	IMhandleResponse1();
	cleared=false;
}


function IMhandleResponse() {
    if(imhttp.readyState == 4){
        var imresponse = imhttp.responseText;
        var imupdate = new Array();
		var imup2 = new Array();
        if(imresponse.indexOf('|||' != -1)) {
            imupdate = imresponse.split('|||');
	    	for (var i = 1; i<imupdate.length; i++) {
				imup2 = imupdate[i].split('|:|');
            	imup2[1] = imup2[1].replace(/Ã„/g, "Ä");
              imup2[1] = imup2[1].replace(/Ã–/g, "Ö");
              imup2[1] = imup2[1].replace(/Ãœ/g, "Ü");
              imup2[1] = imup2[1].replace(/Ã¤/g, "ä");
              imup2[1] = imup2[1].replace(/Ã¶/g, "ö");
              imup2[1] = imup2[1].replace(/Ã¼/g, "ü");
              imup2[1] = imup2[1].replace(/ÃŸ/g, "ß");
              document.getElementById(imup2[0]).innerHTML=imup2[1];
	    	}
        }
    }
}

function IMhandleResponse1() {
	var imresponse = imhttp.responseText;
	var imupdate = new Array();
	var imup2 = new Array();

	if(imresponse.indexOf('|||' != -1)) {
		imupdate = imresponse.split('|||');
		for (var i = 1; i<imupdate.length; i++) {
			imup2 = imupdate[i].split('|:|');
			imup2[1] = imup2[1].replace(/Ã„/g, "Ä");
      imup2[1] = imup2[1].replace(/Ã–/g, "Ö");
      imup2[1] = imup2[1].replace(/Ãœ/g, "Ü");
      imup2[1] = imup2[1].replace(/Ã¤/g, "ä");
      imup2[1] = imup2[1].replace(/Ã¶/g, "ö");
      imup2[1] = imup2[1].replace(/Ã¼/g, "ü");
      imup2[1] = imup2[1].replace(/ÃŸ/g, "ß");
      document.getElementById(imup2[0]).innerHTML=imup2[1];
		}
	}
}
function selectedUser(uname,uid) {
	document.getElementById('im_refuid').value=uid;
	var rt = 'an: <b>';
	if (modeRewrite == 'Y') {
		rt = rt + '<a href="javascript:popUpScrollWindow2('+"'"+docRoot+uid+".htm','center',650,600)"+'">';
	} else {
		rt = rt + '<a href="javascript:popUpScrollWindow2('+"'/showprofile.php?id="+uid+"','center',650,600)"+'">';

	}
  uname = uname.replace(/Ã„/g, "Ä");
  uname = uname.replace(/Ã–/g, "Ö");
  uname = uname.replace(/Ãœ/g, "Ü");
  uname = uname.replace(/Ã¤/g, "ä");
  uname = uname.replace(/Ã¶/g, "ö");
  uname = uname.replace(/Ã¼/g, "ü");
  uname = uname.replace(/ÃŸ/g, "ß");
	rt = rt + uname + '</b></a>';
	document.getElementById('im_refuname').innerHTML = rt;
}

function keyHandler( e ) {

   var ln = document.getElementById('im_msg').value.length;
   document.getElementById('msg_chrs_cnt').innerHTML = '<b>'+(ln + 1)+'/'+im_msg_length+'</b>';
   return e;

}