function Ajax()
{ 
	var xmlhttp = false; 
	try 
	{ 
		// Creacion del objeto AJAX para navegadores no IE
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 
	}
	catch(e)
	{ 
		try
		{ 
			// Creacion del objet AJAX para IE 
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
		} 
		catch(E) 
		{ 
			xmlhttp = false; 
		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp=new XMLHttpRequest(); } 

	return xmlhttp; 
}
/* funcion que coloca el puntero del mouse en espera / normal */
function waitCursor(wait){
	document.body.style.cursor = (wait)?"wait":"pointer";
}
function checkLogin(sendLayer,cgi,iModo,sSearch,sUser,sPass)
{
	var ajax = Ajax();
	var sCgi = cgi;
	var sNew = "";	// se le pone el socket que devuelva la conexion correcta
	switch(iModo){
		case 1:{/* busqueda libre */
			sNew  = "?CMD=INICIAL";
			sNew += "&LINK_TO=RDO_SEARCH";
			sNew += "&SEARCH=" + sSearch;	
							
			sCgi += "?CMD=CHECK_CONNECTION";
			sCgi += "&TIPO=OPAC_LIBRE";
	
		}break;
		case 2:{/* acceso a busqueda avanzada */
			sNew += "?CMD=INICIAL";
			sNew += "&LINK_TO=ADVANCED_SEARCH";		
			
			sCgi += "?CMD=CHECK_CONNECTION";
			sCgi += "&TIPO=OPAC_LIBRE";
				
		}break;
		case 3:{/* acceso a cuadros */
			sNew  = "?CMD=INICIAL";
			sNew += "&LINK_TO=VER_FONDOS";
				
			sCgi += "?CMD=CHECK_CONNECTION";
			sCgi += "&TIPO=OPAC_LIBRE";
					
		}break;	
		case 4:{/* acceso a archivos */
			sNew  = "?CMD=INICIAL";
			sNew += "&LINK_TO=VER_ARCHIVOS";
						
			sCgi += "?CMD=CHECK_CONNECTION";
			sCgi += "&TIPO=OPAC_LIBRE";
			
		}break;	
		case 5:{/* acceso como usuario registrado */
			sNew  = "?CMD=INICIAL";
			sNew += "&LINK_TO=VER_DESKTOP";			
		
			sCgi += "?CMD=CHECK_CONNECTION";
			sCgi += "&TIPO=OPAC_PRIVADO";
			sCgi += "&USER=" + sUser;
			sCgi += "&PASS=" + sPass;				
		}break;									
		case 6:{	/* solicitud de nueva contraseņa */
			sCgi += "?CMD=GET_NEW_PASSWORD";
			sCgi += "&TIPO=OPACWEB";
			sCgi += "&ALT_USER=" + sUser;
			sCgi += "&ALT_PASS=" + sPass;				
		}break;
	}
	var err = "";
	var waitLayer 	= document.getElementById("formAccess");
	if(!waitLayer){
		alert("error");
		return;
	}
	
	var oldContent	= waitLayer.innerHTML;
		
	var oLayerError = document.getElementById("error");
	if(!oLayerError){
		alert("error");
		return;
	}
	oLayerError.innerHTML = "";

	ajax.open("GET", sCgi, true);
	ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	ajax.setRequestHeader("Method", "GET " + cgi + "HTTP/1.1");
	ajax.setRequestHeader("Cache-Control", "no-cache, must-revalidate");
	ajax.setRequestHeader("Pragma", "no-cache");
	ajax.setRequestHeader("Accept-Charset", "iso-8859-1");
	ajax.onreadystatechange=function() 
	{ 
			if 			(ajax.readyState==1){					
				waitLayer.innerHTML = "<div class='waitLogin'><p>"+msgConnect[13]+"</p></div>" + oldContent;
			}
			else if	(ajax.readyState==4)
			{
				waitCursor(false);
				if(ajax.status == 200){
					if(ajax.responseText == ""){
						err  = "<div class='err'>"+msgConnect[0]+"</div>";
						err += "<div class='dsc'>"+msgConnect[3]+"</div>";
						oLayerError.innerHTML = err;
						waitLayer.innerHTML = oldContent;
					}
					else{
						waitLayer.innerHTML = oldContent;
						var rdo = ajax.responseText.split("&");
						if(rdo[0] == "OK"){
							if(rdo[1] == "PASSWORD"){
								var oOldPass = document.getElementById("PASS");
								var oOldUser = document.getElementById("USER");
								oLayerError.innerHTML 	= "<span class='textRdo'>"+msgConnect[11]+"</span><span class='textRdo2'>"+rdo[2]+"</span>";
								oOldPass.value 	= rdo[2];
								oOldUser.value  = sUser; 
								oOldPass.disabled = false;						
								oOldUser.disabled = false;
								openWeb(7);
								
							}
							if(rdo[1] == "CONNECTION"){
								waitLayer.innerHTML = oldContent;
								var posx = 0;
								var posy = 0;
								sNew = rdo[2] + sNew;
								var wWidth 	= window.screen.availWidth;
								var wHeight = window.screen.availHeight;
								var win = window.open(sNew, '', 'location=0,menubar=0,directories=0,toolbar=0,status=0,personalbar=0,titlebar=0,resizable=1,scrollbars=1,dependent=1');
								if(win){
									win.moveTo(posx,posy);
									win.resizeTo(wWidth,wHeight);
								}
								else{
									alert(msgConnect[5]);
								}
							}
						}
						else if(rdo[0] == "NO"){
							if(rdo[1] == "PASSWORD"){
								err  = "<div class='err'>" + msgConnect[1]  + "</div>";
								err += "<div class='dsc'>" + msgConnect[10] + "</div>";		
								oLayerError.innerHTML = err;
								waitLayer.innerHTML = oldContent;							
							}
							if(rdo[1] == "CONNECTION"){
								err  = "<div class='err'>"+msgConnect[0]+"</div>";
								err += "<div class='dsc'>" + rdo[2] + "</div>";
								waitLayer.innerHTML = oldContent;	
								oLayerError.innerHTML = err;
								var oOldPass = document.getElementById("PASS");
								var oOldUser = document.getElementById("USER");
								oOldPass.value 	= "";
								oOldUser.value  = sUser; 
								oOldPass.disabled = false;						
								oOldUser.disabled = false;								
								oOldPass.focus();
														
							}
						}
						else
						{
                            if(rdo[0] == "ERROR_CGI"){
                                err = rdo[1];
                            }				
                            else{		
							    err  = "<div class='err'>"+msgConnect[0]+"</div>";
							    err += "<div class='dsc'>"+msgConnect[3]+"</div>";
							}
							oLayerError.innerHTML = err;
							waitLayer.innerHTML = oldContent;							
						}
					}
				}
				else if(ajax.status == 404)
				{
					err  = "<div class='err'>"+msgConnect[0]+"</div>"
					err += "<div class='dsc'>"+msgConnect[2] + " " + cgi;
					err += "<p>"+msgConnect[ajax.status]+"</p>";
					err += "</div>";
					oLayerError.innerHTML = err;
					waitLayer.innerHTML = oldContent;							
					waitCursor(false);
				}
				else
				{
					err  = "<div class='err'>"+msgConnect[0]+"</div>"
					err += "<p>"+msgConnect[ajax.status]+"</p>";					
					oLayerError.innerHTML = err;
					waitLayer.innerHTML = oldContent;							
					waitCursor(false);
				}
			}
		
	}
	ajax.send(null);
}
