﻿var reqXML;
    
function LoadXMLDoc(url){ 
  if (window.XMLHttpRequest){ //Mozilla, Firefox, Opera 8.01, Safari
    reqXML = new XMLHttpRequest(); 
    reqXML.onreadystatechange = BuildXMLResults; 
    reqXML.open("GET", url, true); 
    reqXML.send(null); 
  }
  else if(window.ActiveXObject){ //IE
    reqXML = new ActiveXObject("Microsoft.XMLHTTP"); 
    if (reqXML) { 
      reqXML.onreadystatechange = BuildXMLResults; 
      reqXML.open("GET", url, true); 
      reqXML.send(); 
    } 
  }
  else{ //Older Browsers
    alert("El vostre navegador no suporta Ajax. Actualitzeu-lo, si us plau");
  }
} 

function BuildXMLResults(){
  if(reqXML.readyState == 4){ //completed state
    if(reqXML.status == 200){ //We got a sucess page back
         
      var myStr=new String(reqXML.responseText); 
	  
	  //Check to verify the message from the server 
      if(myStr.search(/servidor/) > -1){
        SetTimer(); //restart timer
      }
      else{
        //display that that session expired
		alert("La vostra sessió sembla que ha expirat. Pot ser que perdeu les dades actuals.");
      }
    } 
    else{
      //display server code not be accessed
      alert("Hi ha un problema rebent les dades XML:\n" + reqXML.statusText);
    }		
  }
}
      
function ConfirmUpdate(){
  //Ask them to extend
  if(confirm("La vostra sessió està a punt de caducar. Premeu 'OK' per a renovar-la.")){
    //load server side page if ok
    LoadXMLDoc('refSessio.jsp');
  }else{
	  window.location = 'ContSessio.jsp';
  }
}      
      
var timerObj;
function SetTimer(){
  //How long before timeout (should be a few minutes before your server's timeout
  var dblMinutes = 15.0;
  //set timer to call function to confirm update 
  timerObj = setTimeout("ConfirmUpdate()",1000*60*dblMinutes);
}
      
//start the timer
SetTimer();

