var http = createRequestObject();

var st = 1;
var temp;

function createRequestObject() {
	var xmlhttp;
	try { xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); }
  catch(e) {
    try { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}
    catch(f) { xmlhttp=null; }
  }
  if(!xmlhttp&&typeof XMLHttpRequest!="undefined") {
  	xmlhttp=new XMLHttpRequest();
  }
	return  xmlhttp;
}

function refresh(){
	
	var r = Math.round((99977562 - 10016486) * Math.random() + 1) + 22423;
	patch = "./refresh.php?now=" + r;
	
    http.open("GET",patch,true);
    http.onreadystatechange = function() {handle()};	
	http.send(null);	
	to = setTimeout("refresh()", 1200);	
} 	
    	
    		
function handle(){
		
	if(st == 1 && document.getElementById('openchat') != null){
		 document.getElementById('openchat').style.display = "";
	}
		
  	if((http.readyState == 4)&&(http.status == 200)){
    	var response = http.responseText;
		    	
    	var results = response.split("*");
    	
    	// no users online
   		if(results == ""){
    		document.getElementById('users_list').innerHTML = "<div style=\"text-align:center;height:20px;width:175px;color:#3B5998;font-weight:bold;\" id=\"nousers\">אין חברים מחוברים כרגע.</div>";
			document.getElementById('nousers').style.display = "";
		}
		else if(document.getElementById('nousers') != null){
			document.getElementById('nousers').style.display = "none";
		}
		
		if(results.length != temp && temp >= 0){
			document.getElementById('users_list').innerHTML = "";
			document.getElementById('users_list_foreign').innerHTML = "";
		}
   
    	temp = results.length;
    	
    	for (i=0; i < results.length; i++) {
    	
    			var fields = results[i].split('|');
  			 	
    			roomId = parseInt(fields[0]);
    			who = fields[1];
    			typemess = fields[2];
    			username = fields[3];
    			fullname = fields[4];
    			file = fields[5];
    			unknown = fields[6];
    			num = fields[7];
    	
			// type message stop
			time_added = getCookie("type_"+roomId);
			if(time_added >= 1){
				time_added--;
				setCookie("type_"+roomId,time_added,"1");	
			}	
			
			
    		// if someone type a new message	
    		if(typemess == "1" && who == "1" && document.getElementById("typemess_"+roomId) != null){
    			document.getElementById("typemess_"+roomId).style.display = "";
    			document.getElementById("type_"+roomId).src = "chat/type.gif";
    		}
    		else if (typemess == "2" && document.getElementById("typemess_"+roomId) != null){
    			document.getElementById("typemess_"+roomId).style.display = "none";
    			document.getElementById("type_"+roomId).src = "chat/onlineuser.gif";
    		}
    			
    		// update history
    		if(document.getElementById('num_'+roomId) != null && document.getElementById('num_'+roomId).innerHTML < num){
    		 	
    		 	if(who == "1" && (document.getElementById('chat_'+roomId) == null || document.getElementById('chat_'+roomId).style.visibility != 'visible' || document.getElementById('chat_'+roomId).style.display == 'none' || document.getElementById('chat_'+roomId).style.visibility == 'hidden')){
    		 		Sound.play('chat/oa.wav');
    		 	}
    		 	
				if(document.getElementById('chat_'+roomId) == null && roomId > 0){
					var new_buddy = newbuddy(roomId, username, status, fullname, file);
				}

    		 	document.getElementById('box_'+roomId).style.visibility = 'visible'
    		 	document.getElementById('box_'+roomId).style.display = '';
    		 	document.getElementById('chat_'+roomId).style.visibility = 'visible'
    		 	document.getElementById('chat_'+roomId).style.display = '';

    			// status chat
    			setCookie("status_"+roomId,"1","1");
    			
    			// load history
    			to = setTimeout("history("+roomId+")", 250);
    			
    			document.getElementById('input_'+roomId).focus();
    		 }
    		 
    		// number friends
    		document.getElementById('num_users').innerHTML = i;
    		
    		// still open
			status_window = getCookie("status_"+roomId);
    	
			if(document.getElementById('user_'+roomId) == null && roomId > 0){		
				var new_buddy = newbuddy(roomId, username, status_window, fullname, file);
				var create_list = createbuddy(roomId, username, file, unknown, num)
			}
    		
			// new message
			if(document.getElementById('num_'+roomId) != null){
				document.getElementById('num_'+roomId).innerHTML = num;
			}
			
    		 document.getElementById('openchat').style.display = "none";
    		 document.getElementById('foot').style.display = "";
    		 st = 2;
    		 
    	}	

    }
}
