var stanze = new Array();
function cambia_status(valore, voce){
var pars = "voce="+valore;
var status=new Array("user.png", "user_delete.png", "user_go.png");
var icon = status[valore];
document.getElementById('chat-status-icon').style.background = "url(images/"+icon+") 7px 2px no-repeat";
new Ajax.Request('chat.php?action=cambia_status', {
  method:'post',
  parameters: pars,
  onSuccess: function(transport){
  var json = transport.responseText.evalJSON(true);


  }
  });


}
function open_chat_bar(){
new Effect.toggle('chat-bar-2', 'blind');
}
var timer_active = { option: 'no'};
function refresh_lista(){
if(timer_active.option == "si"){
timer_active.option = "no";
clearTimeout(listatimer);
}
timer_active.option="si";
new Ajax.Request('chat.php?action=refresh_lista', {
  method:'post',
  onComplete: function(transport){
  var json = transport.responseText.evalJSON(true);
   var lista= json["lista"]["chat"];
   var totale= json["lista"]["totale"];
   document.getElementById('chat-window-title-numero').innerHTML = "("+totale+")";
   var lista_ora = document.getElementById('chat-lista-text').innerHTML;
   aggiorna_lista(lista);

  }
  });
}

function aggiorna_lista(lista){
var obj = document.getElementById('chat-lista-text');
obj.innerHTML = lista;
listatimer = setTimeout("refresh_lista()", 1000);
}
function apri_lista_amici(){
reset_stanze();

document.getElementById('chat-lista-text').innerHTML = '<div class="spinner-lista"></div>';

var obj = document.getElementById('chat-lista-amici');
document.getElementById('chat-lista-amici-tab').className = 'chat-tab-active';
var element = document.getElementById('chat-lista-amici-tab');
var coords = {x: 0, y: 0};
while (element) {
coords.x += element.offsetLeft;
coords.y += element.offsetTop;
element = element.offsetParent;
}
var element2 = document.getElementById('chat-bar-2');
var cors = {x: 0, y: 0};
while (element2) {
cors.x += element2.offsetLeft;
cors.y += element2.offsetTop;
element2 = element2.offsetParent;
}
obj.style.left = coords.x-cors.x+ 'px';
obj.style.top = coords.y-cors.y-205+ 'px';

obj.style.display = 'block';
refresh_lista();
}

function refresh_all(){

new Ajax.Request('chat.php?action=refresh_all', {
  method:'post',
  onSuccess: function(transport){
  var json = transport.responseText.evalJSON(true);

  var lunghezza = json['stanze']['lunghezza'];
   for (a=0;a<lunghezza;a++) {
   var chi = json['s_'+a]['da'];
   var id_stanza = json['s_'+a]['id_stanza'];
   var cont_tab = json['s_'+a]['cont_tab'];
   var cont_window = json['s_'+a]['cont_window'];
    if(document.getElementById('chat-window-'+id_stanza) == null){
	nuova_stanza(cont_tab, cont_window); 
    }

   

   }
   var totale = json['windows']['totali'];
   for (a=0;a<totale;a++) {
   var id_stanza = json['w_'+a]['id_stanza'];
   var status = json['w_'+a]['status'];
   var status = json['w_'+a]['offline'];
   var icon = json['w_'+a]['statoutente'];

   if(status == '1'){ rendi_inattiva_stanza(id_stanza);
   document.getElementById('icona-tab-'+id_stanza).src = "images/user_red.png";
   }else {
   document.getElementById('chat-input-'+id_stanza).disabled=false;
   document.getElementById('icona-tab-'+id_stanza).src = "images/"+icon;

   }
   stanze[a] = id_stanza;
   }
   
   var lunghezza = json['finestre']['lunghezza'];
   for (a=0;a<lunghezza;a++) {
   var id_stanza = json['f_'+a]['id_stanza'];
   var testo = json['f_'+a]['testo'];
   aggiorna_finestre_dopo(id_stanza, testo);
   }
   var lista_tot = json['lista']['totale'];
   document.getElementById('chat-window-title-numero').innerHTML = "("+lista_tot+")";
      
   mio_intervallo = setTimeout("refresh_all()", 1500);


  }
  });
}
var scroll = { option: 'si'};

function attiva_scroll(){
scroll.option="si";
}
function disattiva_scroll(){
scroll.option="no";
}
function aggiorna_finestre(id, testo){
var objDiv = document.getElementById('chat-window-text-'+id);
document.getElementById('chat-window-text-'+id).innerHTML = testo;
if(scroll.option == 'si'){
objDiv.scrollTop = objDiv.scrollHeight;
}
}
function aggiorna_finestre_dopo(id, testo){
var objDiv = document.getElementById('chat-window-text-'+id);
if(document.getElementById('chat-window-'+id).style.display == 'none'){
if(document.getElementById('chat-tab-'+id).className == 'chat-tab-inactive'){
document.getElementById('chat-tab-'+id).className = "chat-tab-alert";
}
}
document.getElementById('chat-window-text-'+id).innerHTML += testo;

if(scroll.option == 'si'){
objDiv.scrollTop = objDiv.scrollHeight;
}
}

function chiudi_stanza_utente(id){

var pars = "id="+escape(id);
new Ajax.Request('chat.php?action=chiudi_stanza_utente', {
  method:'post',
  parameters: pars,
  requestHeaders: {Accept: 'application/json'},
  onSuccess: function(transport){
  var nuovo = cerca_array(stanze, id);
  stanze.splice(nuovo, 1); 

removeElement('chat-bar-windows', 'chat-window-'+id);
removeElement('chat-bar-list', 'tab-padder-'+id);
removeElement('chat-bar-list', 'padder-right-'+id);
reset_stanze();
scroll_tab_left(0,'');

   }
  });
  
}




  
function removeElement(parentId, elementId) {
//Get a reference to the element containgint the element we are removing
var parentElement = document.getElementById(parentId);
//Get a reference to the element we are removing
var childElement = document.getElementById(elementId);
//remove the
parentElement.removeChild(childElement);
}





function refresh_inizio(){
new Ajax.Request('chat.php?action=refresh_inizio', {
  method:'post',
  onSuccess: function(transport){
  var json = transport.responseText.evalJSON(true);
  var lunghezza = json['stanze']['lunghezza'];
	document.getElementById('chat-bar-list').innerHTML = '';
	document.getElementById('chat-bar-windows').innerHTML = '';
   for (a=0;a<lunghezza;a++) {
   var chi = json['s_'+a]['da'];
   var id_stanza = json['s_'+a]['id_stanza'];
   var cont_tab = json['s_'+a]['cont_tab'];
   var cont_window = json['s_'+a]['cont_window'];
   nuova_stanza(cont_tab, cont_window); 

   }
   var totale = json['windows']['totali'];
   for (a=0;a<totale;a++) {
   var id_stanza = json['w_'+a]['id_stanza'];
   stanze[a] = id_stanza;
   }
   
   var lunghezza = json['finestre']['lunghezza'];
	
   for (a=0;a<lunghezza;a++) {
    var id_stanza = json['f_'+a]['id_stanza'];
   var testo = json['f_'+a]['testo'];
   aggiorna_finestre(id_stanza, testo);
   }
  mio_intervallo = setTimeout("refresh_all()", 1500);
  }
  });
}

function invia_messaggio_chat(id){
clearTimeout(mio_intervallo);
var testo = document.getElementById('chat-input-'+id).value;
if(testo !==''){
var a = document.getElementById('chat-tab-user-'+id).innerHTML;

var testo = encodeURIComponent(testo);

var pars = "a="+escape(a)+"&testo="+testo+"&id_stanza="+escape(id);
new Ajax.Request('chat.php?action=invia_messaggio', {
  method:'post',
  parameters: pars,
  requestHeaders: {Accept: 'application/json'},
  onComplete: function(transport){
  document.getElementById('chat-input-'+id).value = '';
  refresh_all();
   mio_intervallo = setTimeout("refresh_all()", 1500);

  }
});
}
}
function nuova_stanza(cont, cont_window){
	document.getElementById('chat-bar-list').innerHTML += cont;
	document.getElementById('chat-bar-windows').innerHTML += cont_window;

}




function apri_stanza_chat(){

var a = document.getElementById('apri_con').value;
var pars = "a="+escape(a);
new Ajax.Request('chat.php?action=apri_stanza_chat', {
  method:'post',
  parameters: pars,
  requestHeaders: {Accept: 'application/json'},
  onSuccess: function(transport){
    var json = transport.responseText.evalJSON(true);
	if(json.error !== 'error'){
	var stanza = json.stanza;
	stanze.push(stanza);
	var cont = json.contenuto;


	var cont_window = json.contenuto_window;
	document.getElementById('chat-bar-list').innerHTML += cont;
	document.getElementById('chat-bar-windows').innerHTML += cont_window;
	document.getElementById('chat-lista-amici').style.display = 'none';
    document.getElementById('nome-lista-chat').innerHTML = '<a href="javascript:apri_lista_amici()">Lista Amici</a>';
clearTimeout(listatimer);
document.getElementById('chat-lista-amici-tab').className = 'chat-tab-inactive';
if(document.getElementById('chat-window-'+stanza) == null && stanza !=='' && stanza !== null){
scroll_ultimo_e_apri(0, '', stanza);
}
else{
if(stanza !=='' && stanza !== null){
reset_stanze();
apri_stanza_utente(stanza);
}
}
    }
  }
});
}
function apri_da_lista(a){

var pars = "a="+escape(a);
new Ajax.Request('chat.php?action=apri_stanza_chat', {
  method:'post',
  parameters: pars,
  requestHeaders: {Accept: 'application/json'},
  onComplete: function(transport){
    var json = transport.responseText.evalJSON(true);
	if(json.error !== 'error'){
	var stanza = json.stanza;
	stanze.push(stanza);
	var cont = json.contenuto;
	var cont_window = json.contenuto_window;
clearTimeout(listatimer);
document.getElementById('chat-lista-amici').style.display = 'none';
document.getElementById('chat-lista-amici-tab').className = 'chat-tab-inactive';
document.getElementById('nome-lista-chat').innerHTML = '<a href="javascript:apri_lista_amici()">Lista Amici</a>';
if(document.getElementById('chat-window-'+stanza) == null){
	document.getElementById('chat-bar-list').innerHTML += cont;
	document.getElementById('chat-bar-windows').innerHTML += cont_window;
scroll_ultimo_e_apri(0, '', stanza);
}
else{
reset_stanze();
apri_stanza_utente(stanza);
}
    }
  }
});
}

function apri_stanza_utente(id){
var totale = stanze.length;
reset_stanze();

var objDiv = document.getElementById('chat-window-text-'+id);
var obj = document.getElementById('chat-window-'+id);
var element = document.getElementById('chat-tab-'+id);
var open = document.getElementById('chat-bar-windows');
document.getElementById('chat-tab-'+id).className = 'chat-tab-active';
var coords = {x: 0, y: 0};
while (element) {
coords.x += element.offsetLeft;
coords.y += element.offsetTop;
element = element.offsetParent;
}
var element2 = document.getElementById('chat-bar-2');
var cors = {x: 0, y: 0};
while (element2) {
cors.x += element2.offsetLeft;
cors.y += element2.offsetTop;
element2 = element2.offsetParent;
}
obj.style.left = coords.x-cors.x+ 'px';
obj.style.top = coords.y-cors.y-205+ 'px';

obj.style.display = 'block';
objDiv.scrollTop = objDiv.scrollHeight;

}

function minimizza_stanza_utente(id){
document.getElementById('chat-window-'+id).style.display = 'none';
document.getElementById('chat-tab-'+id).className = 'chat-tab-inactive';
}
function minimizza_lista_amici(id){
document.getElementById('chat-lista-amici').style.display = 'none';
document.getElementById('chat-lista-amici-tab').className = 'chat-tab-inactive';
document.getElementById('nome-lista-chat').innerHTML = '<a href="javascript:apri_lista_amici()">Lista Amici</a>';
clearTimeout(listatimer);
}

