
var ie = (document.all)? true:false
var dom = (document.getElementById)? true:false 
var urlbase = "";
var key = "";
var browsername;
var checkjava = checkJavaSupport();
var checkSoftStatus="";


function initUCRAV(urlbase,key){

   setUrlBase(urlbase);
   setKey(key);
   checkSoft();

}


function detectSO() {

if (navigator.userAgent.indexOf('IRIX') != -1) {var SO = "Irix" }
   else if ((navigator.userAgent.indexOf('Win') != -1) && (navigator.userAgent.indexOf('98') != -1)) {var SO= "Windows 98"}
   else if ((navigator.userAgent.indexOf('Win') != -1) && (navigator.userAgent.indexOf('95') != -1)) {var SO= "Windows 95"}
   else if (navigator.appVersion.indexOf("16") !=-1) {var SO= "Windows 3.1"}
   else if (navigator.userAgent.indexOf("NT 5.1") !=-1) {var SO= "Windows XP"}
   else if (navigator.userAgent.indexOf("NT 5.2") !=-1) {var SO= "Windows Server 2003"}
   else if (navigator.userAgent.indexOf("NT 5") !=-1) {var SO= "Windows 2000"}
   else if (navigator.userAgent.indexOf("NT 6") !=-1) {var SO= "Windows Vista"}
   else if (navigator.appVersion.indexOf("NT") !=-1) {var SO= "Windows NT"}
   else if (navigator.appVersion.indexOf("SunOS") !=-1) {var SO= "SunOS"}
   else if (navigator.appVersion.indexOf("Linux") !=-1) {var SO= "Linux"}
   else if (navigator.userAgent.indexOf('Mac') != -1) {var SO= "Macintosh"}
   else if (navigator.appName=="WebTV Internet Terminal") {var SO="WebTV"}
   else if (navigator.appVersion.indexOf("HP") !=-1) {var SO="HP-UX"}
   else {var SO= "No identificado"}

 return SO;
} 


function detectBrowser(){
	
	 alert(navigator.appName);	
	
     browsername = navigator.appName;
     
     if (browsername.indexOf("Netscape")!= -1){
          browsername="NS";          
     }else{
    	 if (navigator.userAgent.indexOf('Opera') != -1) {
    		 browsername="OP";
    	 }else if(browsername.indexOf("Microsoft") != -1){
            browsername="MSIE";            
         }
     }
     
     if (browsername != "NS" && browsername != "OP" && browsername != "MSIE"){
        alert("Su navegador no es compatible con el sistema UCRAV");        
     }   
     
     if (!checkjava.javaEnabled  || checkjava.version == ''){
        alert("Debe instalar el plugin de java para utilizar correctamente el sistema UCRAV");
                     
     }  
}

function isCompatibleBrowser(){
    detectBrowser();
    if (browsername == "NS" || browsername == "OP" || browsername == "MSIE"){
       return(true);
    }else{
       return(false);
    }
}

function checkJavaSupport() {
  var result = { 
    javaEnabled: false,
    version: ''
  };
  if (typeof navigator != 'undefined' && typeof navigator.javaEnabled != 'undefined') 
    result.javaEnabled = navigator.javaEnabled();
  else
    result.javaEnabled = 'unknown';
  if (navigator.javaEnabled() && typeof java != 'undefined')
    result.version = java.lang.System.getProperty("java.version");
  return result;
}

function setUrlBase(url){
    urlbase = url;
}

function setKey(strKey){
    key = strKey;
}

function openDown(res,ruta){
	if ((ruta!="")&&(ruta!=null))
	{
		location.href=urlbase+"/pages/commons/download.jsp?res="+res+"&file="+ruta;
	}
}

function enviarVideo(btn, reserva){
	btn.disabled=true;
	 var ajax=creaAjax();                 
    var params="res="+reserva;
    var url = urlbase+"/pages/commons/videotransmit.jsp";
     
     ajax.open ('POST', url, true);
     ajax.onreadystatechange = function() {
     var msg="";
     if (ajax.readyState==1){
         // cargando .....
     }else if (ajax.readyState==4){
         if(ajax.status==200){
           // msg = ajax.responseText;        
           alert("La disponibilizacion de video ha finalizado. ");           
           btn.disabled=false;                  
         }else{
          // alert("Error sessionAjax("+action+") : "+ajax.status);
         }
                    
          }                          
      }
      ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
      ajax.send(params);   
      
      return;
	
}

function enviarArchivos(btn, reserva){
	/*if(ie)
	{
		document.treeAppletIE.enviarArchivos();
	}else if (dom){
		document.getElementById("TreeViewApplet").enviarArchivos();
	}*/
	
	 btn.disabled=true;
	 var ajax=creaAjax();                 
     var params="res="+reserva;
     var url = urlbase+"/pages/commons/sendfiles.jsp";
      
      ajax.open ('POST', url, true);
      ajax.onreadystatechange = function() {
      var msg="";
      if (ajax.readyState==1){
          // cargando .....
      }else if (ajax.readyState==4){
          if(ajax.status==200){
            // msg = ajax.responseText;        
            alert("La disponibilizacion de archivos a sido exitosa. ");           
            btn.disabled=false;                  
          }else{
           // alert("Error sessionAjax("+action+") : "+ajax.status);
          }
                     
           }                          
       }
       ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
       ajax.send(params);   
       
       return;
	
	
}



function checkSoftReq(){
        
    var check=null;
    if(ie){
		check = document.appletCheckSoftIE;
	}else if (dom){
		check = document.getElementById("appletCheckSoftNS");
	}

    var status;
    if (check != null){
        status =  check.getStatus();
    }
    
    var divcheck = document.getElementById('checkSoft');
    
    while (divcheck.firstChild) {
        divcheck.removeChild(divcheck.firstChild);
    }
    
    if (status != "ok"){       
        var div = document.createElement('div');
        div.innerHTML = "<p>Software requerido debe ser instalado. Descarguelo <a href='' onclick='openSoftReq(); return false;'>aqu&iacute;</a>.</p>";
        divcheck.appendChild(div);
        setSoftStatus("");
    }else{
    	setSoftStatus("ok");
    }
    
    setTimeout("checkSoftReq()", 5000);
    //alert("status ="+status);
    
}

function openSoftReq(){
   var url = "soft/";
   open(url,"","height=300,width=400,status=no,scrollbars=no,resizable=no");
}   

function checkSoft(){
/*
   var so = detectSO();
   
   if (so.indexOf("Windows") == -1 &&
       so.indexOf("Linux") == -1){
       
       location.href = urlbase+"/install.jsp?soft=sistema";   
       return;            
   }    
  */ 

   var browser = navigator.appName;
     
   if (browser.indexOf("Netscape") == -1 &&
       browser.indexOf("Microsoft") == -1){                           
       location.href = urlbase+"/install.jsp?soft=navegador";   
       return;     
   }   
   
   var jre = checkJavaSupport();
      
   if (!jre.javaEnabled){
       location.href = urlbase+"/install.jsp?soft=jre";                     
       return;
   } 
   
   regSoftOK();      
}

function regSoftOK(){
	var ajax=creaAjax();                 
    var params="checksoft=ok&"+"key="+key;
    var url = urlbase+"/checkUserSoft.do";
     
    ajax.open ('POST', url, true);
    ajax.onreadystatechange = function() {
    var msg="";
    if (ajax.readyState==1){
        //cargando .....
    }else if (ajax.readyState==4){
        if(ajax.status==200){
          msg = ajax.responseText.replace(/^\s+|\s+$/g,'');
         // msg = ajax.responseXML;   
          if (msg.indexOf("ok") != -1){
            setSoftStatus(msg); 
          }                                  
        }else{
         // alert("Error sessionAjax("+action+") : "+ajax.status);
        }
                   
         }                          
     }
     ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
     ajax.send(params);   
        
     return;
    
}	

function setSoftStatus(status){
	checkSoftStatus = status;	
}

function checkApplet(){
    addCheckSoft();
    setTimeout("checkSoftReq()", 3000);
}


function addCheckSoft(){
   if (checkjava.javaEnabled){
       document.write('<OBJECT');
       document.write(' id="appletCheckSoftIE"');
       document.write(' classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"');
       document.write(' codebase = "http://java.sun.com/products/plugin/autodl/jinstall-1_6-windows-i586.cab#Version=1,6,0,0" ');
       document.write(' WIDTH=0  ');
       document.write(' HEIGHT=0> ');
       document.write(' <PARAM NAME = CODE VALUE = "cl.reuna.desarrollos.ucrav.applets.checkJMFVM.checkJMFVM.class" > ');
       document.write(' <PARAM NAME = ARCHIVE VALUE = "pages/commons/AppletsUcrav.jar" > ');
       document.write(' <PARAM NAME = "type" VALUE = "application/x-java-applet;version=1.6"> ');
       document.write(' <PARAM NAME = "bgcolor" VALUE = "e5e5e5"> ');
       document.write(' <PARAM NAME = "forecolor" VALUE = "000000"> ');
       document.write(' <PARAM NAME = "pagina" VALUE="operactivo.do"> ');
       document.write(' <PARAM NAME = "key" VALUE="'+key+'"> ');
       document.write(' <COMMENT> ');
       document.write(' <EMBED ');
       document.write('  id="appletCheckSoftNS"');
       document.write('  type = "application/x-java-applet;version=1.6" \ ');
       document.write('  CODE = "cl.reuna.desarrollos.ucrav.applets.checkJMFVM.checkJMFVM.class" \ '); 
       document.write('  ARCHIVE = "pages/commons/AppletsUcrav.jar" \ ');
       document.write('  WIDTH=0  \ ');
       document.write('  HEIGHT=0   \ ');
       document.write('  bgcolor ="e5e5e5" \ ');
       document.write('  forecolor ="000000" \ ');
       document.write('  pagina ="operactivo.do" \ ');
       document.write('  key = "'+key+'" \ ');                        
       document.write('  pluginspage ="http://java.sun.com/products/plugin/index.html#download">');
       document.write('  <NOEMBED>');
       document.write('    Su navegador debe soportar Java.');
       document.write('  </NOEMBED>');
       document.write(' </EMBED>');
       document.write(' </COMMENT>');
       document.write('</OBJECT>');
   }
}


function enviarVideo2(btn){
   
   if (btn.value == "Disponibilizar Video"){
     if (ie){
        document.audiovideoIE.transmitirVideoInstrumento();   
     }else if (dom){
        document.audiovideoNS.transmitirVideoInstrumento();
     }
     btn.value = "Parar Envio de Video";
   }else if (btn.value == "Parar Envio de Video"){
     if (ie){
        document.audiovideoIE.pararVideo();   
     }else if (dom){
        document.audiovideoNS.pararVideo();
     }
     btn.value = "Disponibilizar Video"
   } 
   
}


function confirmaEliminar(){
     msg="\xBFEsta seguro que desea eliminar este registro\x3F"
     
     if (confirm(msg)){
     
        return true
     }   

     return false 
}


function resultReserva(id){
     
    document.forms[0].idReserva.value=id
    document.forms[0].submit()
}

function volver(){
     history.back()
}

function cerrarVentana(){
    ventana=window.self;
    ventana.opener=window.self;
    ventana.close();   
}

function abrirDatos(cliente) {
	var url=urlbase+"/pages/oper/inscripcion_cliente.jsp?cliente="+cliente;
	var win = open(url,"","height=350,width=300,status=no,scrollbars=yes,resizable=yes");		
}

function verDetalleCliente(cli){
	
   tb_show("UCRAV", urlbase+"/pages/oper/inscripcion_cliente.jsp?cliente="+cli+"&placeValuesBeforeTB_=savedValues&TB_iframe=true&height=440&width=360&modal=true","media/loadingAnimation.gif");
   
}  

function verDetalleReserva(res){
	
   tb_show("UCRAV", urlbase+"/detalleReserva.do?idReserva="+res+"&placeValuesBeforeTB_=savedValues&TB_iframe=true&height=400&width=500&modal=true","media/loadingAnimation.gif");
	
    /*var url=urlbase+"/detalleReserva.do?idReserva="+res
    open(url,"","height=230,width=200,status=no,scrollbars=yes,resizable=no")
    */
}  

function verDetalleAnalisis(ana){

   tb_show("UCRAV", urlbase+"/analisisAdmin.do?action=Consultar&tipo=popup&idAnalisis="+ana+"&placeValuesBeforeTB_=savedValues&TB_iframe=true&height=230&width=200&modal=true","media/loadingAnimation.gif");	
  
   /*	
   var url =urlbase+"/analisisAdmin.do?action=Consultar&idAnalisis="+ana+"&tipo=popup"
   open(url,"","height=230,width=200,status=no,scrollbars=no,resizable=no")
  */ 
}  

function verDetalleMuestra(mue){
	
   tb_show("UCRAV", urlbase+"/detalleMuestra.do?idMuestra="+mue+"&placeValuesBeforeTB_=savedValues&TB_iframe=true&height=230&width=200&modal=true","media/loadingAnimation.gif");	
   
   /*
   var url =urlbase+"/detalleMuestra.do?idMuestra="+mue
   open(url,"","height=230,width=200,status=no,scrollbars=no,resizable=no")
   */
}  

function verDetalleEnvio(envio){
	
   tb_show("UCRAV", urlbase+"/detalleEnvio.do?idEnvio="+envio+"&placeValuesBeforeTB_=savedValues&TB_iframe=true&height=200&width=200&modal=true","media/loadingAnimation.gif");	
  /*	
   var url =urlbase+"/detalleEnvio.do?idEnvio="+envio
   open(url,"","height=200,width=200,status=no,scrollbars=no,resizable=no")
  */  
}

function cerrarDetalle(){	
   self.parent.tb_remove();	
}


function downloadZip(res){
  var url = urlbase+"/pages/commons/download.jsp?res="+res+"&tipo=full";
  location.href=url
}


function sesionActiva(){
    checkSoft();
    sesionAjax("activar");
    setTimeout("sesionActiva()",10000); // cada 10 segundos
}

function cerrarSesion(){      
      
   sesionAjax("cerrar");
      
}


function sesionAjax (action){
          
      var ajax=creaAjax();                 
      var params="action="+action+"&"+"key="+key;
      var url = urlbase+"/activaSessionUser.do";
         
      ajax.open ('POST', url, true);
      ajax.onreadystatechange = function() {
      var msg="";
      if (ajax.readyState==1){
          //cargando .....
      }else if (ajax.readyState==4){
          if(ajax.status==200){
            msg = ajax.responseText.replace(/^\s+|\s+$/g,'');
           // msg = ajax.responseXML;
                       
            if (action == "cerrar"){
              location.href = urlbase+'/index.jsp';
            }   
            if (msg.indexOf("<alerta>") != -1){
              showAlert(msg); 
            }                                  
          }else{
           // alert("Error sessionAjax("+action+") : "+ajax.status);
          }
                     
           }                          
       }
       ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
       ajax.send(params);   
          
       return;
                 
} 

function abrirVisualizacion(inst, res){     
    
	if (checkSoftStatus == "ok"){
	   tb_show("UCRAV", urlbase+"/operactivo.do?instrumento="+inst+"&idReserva="+res+"&placeValuesBeforeTB_=savedValues&TB_iframe=true&height=550&width=730&modal=true","media/loadingAnimation.gif");
	}
		
}



function initVisualizacion(urlbase,key){

	setUrlBase(urlbase);
	setKey(key);
	visualizacionActiva();
}

function visualizacionActiva (){
    
	visualizacionAjax("activar");
    setTimeout("visualizacionActiva()",5000); // cada 5 segundos
               
} 

function visualizacionCerrar(){      
	self.parent.tb_remove();
	visualizacionAjax("cerrar");	
}

function visualizacionAjax (action){
    
    var ajax=creaAjax();                 
    var params="action="+action+"&key="+key;
    var url = urlbase+"/activaVisualizacion.do";
       
    ajax.open ('POST', url, true);
    ajax.onreadystatechange = function() {
    var msg="";
    if (ajax.readyState==1){
        //cargando .....
    }else if (ajax.readyState==4){
        if(ajax.status==200){
          msg = ajax.responseText.replace(/^\s+|\s+$/g,'');
         // msg = ajax.responseXML;
                     
          if (msg.indexOf("<alerta>") != -1){
            showAlert(msg); 
          }                                  
        }else{
         // alert("Error sessionAjax("+action+") : "+ajax.status);
        }
                   
         }                          
     }
     ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
     ajax.send(params);   
        
     return;
               
} 

function showAlert(strXML){     
     
     // var mensajes = x.getElementsByTagName("mensaje").length;
     
     var x = xml2obj(strXML);
             
     var origen = x.getElementsByTagName("origen")[0].childNodes[0].nodeValue;
    // var destino = x.getElementsByTagName("destino")[0].childNodes[0].nodeValue;
     var fecha = x.getElementsByTagName("fecha")[0].childNodes[0].nodeValue;
     var hora = x.getElementsByTagName("hora")[0].childNodes[0].nodeValue;
     var texto =  x.getElementsByTagName("texto")[0].childNodes[0].nodeValue;
     
     var txt = "Ha recibido un mensaje desde el sistema UCRAV \n\n";
     txt += "Origen : "+origen+"\n";
     txt += "Fecha : "+fecha+"\n";
     txt += "Hora : "+hora+"\n";
     txt += "Mensaje : "+texto+"\n";  
     
     alert(txt);    
     
} 

function ltrim(testStr) { 
   if (testStr == "") 
      return ""; 
   else { 
      var pattern = /[^\s]+.*/; 
      result = testStr.match(pattern); 
      return result[0]; 
   } 
} 

function rtrim(testStr) { 
   if (testStr == "") 
      return ""; 
   else { 
      var pattern = /.*[\S]/; 
      result = testStr.match(pattern); 
      return result[0]; 
   } 
} 

function trim(testStr) { 
   return rtrim(ltrim(testStr)); 
} 

var xPos;
var yPos;

function showToolTip(title,msg,evt){
    if (evt) {
        var url = evt.target;
    }
    else {
        evt = window.event;
        var url = evt.srcElement;
    }
    xPos = evt.clientX;
    yPos = evt.clientY;

   var toolTip = document.getElementById("toolTip");
   toolTip.innerHTML = "<h1>"+title+"</h1><p>"+msg+"</p>";
   toolTip.style.top = parseInt(yPos)+2 + "px";
   toolTip.style.left = parseInt(xPos)+2 + "px";
   toolTip.style.visibility = "visible";
   
}

function hideToolTip(){
   var toolTip = document.getElementById("toolTip");
   toolTip.style.visibility = "hidden";
}

function isArray(o) {
  return Object.prototype.toString.call(o) === '[object Array]'; 
}
