function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


  	function flip(rid)
  	{
    	current=(document.getElementById(rid).style.display == 'none') ? 'block' : 'none';
    	document.getElementById(rid).style.display = current;
 	}
 	
 	function trimWhiteSpace(hasSpaceString) 
	{
		var trimmedString = "";

		while(hasSpaceString.charAt(0) == " ") 
		{
			trimmedString = hasSpaceString.substring(1,(hasSpaceString.length));
			hasSpaceString = trimmedString;
		}
		while(hasSpaceString.charAt(hasSpaceString.length - 1) == " ") 
		{
			trimmedString = hasSpaceString.substring(0,(hasSpaceString.length - 1));
			hasSpaceString = trimmedString;
		}
		return hasSpaceString;
	}
	
	function stripInitZeroSpace(s)
	{
  		var ret = "";
  		s = trimWhiteSpace(s);
  		for (var i = 0; i < s.length; i++)
    		if (s.charAt(i) != '0') break;

  		ret = s.substring(i);

  		return ret;
	} 
 	

	function control(Obj_form)
	{
    
		if ( stripInitZeroSpace(Obj_form.nombres_cl.value) == '') 
		{ 
	  		alert ("Falta campo de nombres");
	  		Obj_form.nombres_cl.focus();
	  		return false;      
	  	}
	  	
	  	if ( stripInitZeroSpace(Obj_form.documento_cl.value) == '') 
		{ 
	  		alert ("Falta campo de documento");
	  		Obj_form.documento_cl.focus();
	  		return false;      
	  	}
	  
	  	if ( stripInitZeroSpace(Obj_form.apellidos_cl.value) == '') 
		{ 
	  		alert ("Falta campo de apellidos");
	  		Obj_form.apellidos_cl.focus();
	  		return false;      
	  	}
	  	
	  	if ( stripInitZeroSpace(Obj_form.documento_cl.value) == '') 
		{ 
	  		alert ("Falta campo de documento");
	  		Obj_form.documento_cl.focus();
	  		return false;      
	  	}
	  	
	  	if ( stripInitZeroSpace(Obj_form.pais_cl.value) == '') 
		{ 
	  		alert ("Falta campo de pais");
	  		Obj_form.pais_cl.focus();
	  		return false;      
	  	}
	  	
	  	if ( stripInitZeroSpace(Obj_form.ciudad_cl.value) == '') 
		{ 
	  		alert ("Falta campo de ciudad");
	  		Obj_form.ciudad_cl.focus();
	  		return false;      
	  	}
	  	
	  	if ( stripInitZeroSpace(Obj_form.direccion_cl.value) == '') 
		{ 
	  		alert ("Falta campo de dirección");
	  		Obj_form.direccion_cl.focus();
	  		return false;      
	  	}
	  	
	  	if ( stripInitZeroSpace(Obj_form.codigo_postal_cl.value) == '') 
		{ 
	  		alert ("Falta campo de Código postal");
	  		Obj_form.codigo_postal_cl.focus();
	  		return false;      
	  	}
	  	
	  	if ( stripInitZeroSpace(Obj_form.telefono_cl.value) == '') 
		{ 
	  		alert ("Falta campo de teléfono");
	  		Obj_form.telefono_cl.focus();
	  		return false;      
	  	}
	  		
	  	if( isValidEmailAddress(Obj_form.email_cl.value) == false ) 
	  	{
	  		alert('Falta campo de e-mail válido.');      
	  		Obj_form.email_cl.focus();
	  		return false;
	  	}
		
	  	if ( stripInitZeroSpace(Obj_form.user_cl.value) == "") 
		{ 
	  		alert ("Falta campo de user");
	  		Obj_form.user_cl.focus();
	  		return false;      
	  	}
	  	if ( stripInitZeroSpace(Obj_form.password_cl.value) == '') 
		{ 
	  		alert ("Falta campo de password");
	  		Obj_form.password_cl.focus();
	  		return false;      
	  	}
	  	if ( stripInitZeroSpace(Obj_form.dominio_cl.value) == '') 
		{ 
	  		alert ("falta nombre de dominio relacionado con el plan");
	  		Obj_form.dominio_cl.focus();
	  		return false;      
	  	}
	  	
	  	with (Obj_form)	// Establecemos por defecto el nombre formulario pasado para toda la función.
		{
			var eleccion = tipo_cl[tipo_cl.selectedIndex].value; 
			
			if(eleccion == 1)
			{
				if( stripInitZeroSpace(num_empresa_cl.value) == '')
				{
					alert("Al registrarse como Empresa debe ingresar \n el número de la misma");
					num_empresa_cl.focus();					
					return false;
				}
			}						
		}
	  		  	
	  	if( (Obj_form.condiciones.checked) == false ) 
	  	{
      		alert('Para crear una cuenta en INFRANETWORKING debe Leer y Aceptar las Condiciones del Servicio.');
      		Obj_form.condiciones.focus();
      		return false;
    	}
		      	
		//$fecha_alta_cl		
		//$estado_cl			
		//$razon_estado_cl		
		//$nivel_inactidvidad_cl	
		//$ip_alta_cl						
		//$dia_mes_vence_cl		
		//$cuenta_al_dia_cl				
		//$porcentage_desc_cl	
		//$descripcion_desc_cl	
		//$reseller_cl			
		//$management_cl		
		//$panel_cl				
		//$dedicado_cl			
		//$aviso_n_cl					
		//$ultmesfacturado_cl	
	}

	function isValidEmailAddress(s)
	{
		var atPosition = s.indexOf("@");

		if(atPosition == -1)
			return false;
	
		if(atPosition < s.lastIndexOf("@"))
			return false; // more than one
	
		var dotPosition = s.lastIndexOf(".");
	
		if(dotPosition < atPosition || dotPosition == (atPosition + 1))
			return false;
	
		return true;
	
	}
	
	function muestra_n_empresa(n_capa)
	{
		with (document.forms.form2)
		{
			var eleccion2 = tipo_cl[tipo_cl.selectedIndex].value;
			
			if(eleccion2 == 1)
			{
				document.getElementById('num_empresa_cl').disabled=false; 
				//num_empresa_cl.type = "text";
			}
			else
			{
				document.getElementById('num_empresa_cl').disabled=true; 
				//num_empresa_cl.type = "hidden";
			}
		}	
	}
function OpenBrWindow(theURL,winName,features, myWidth, myHeight, isCenter) 
{ 
	//v3.0
  	if(window.screen)if(isCenter)if(isCenter=="true")
  	{
    	var myLeft = (screen.width-myWidth)/2;
    	var myTop = (screen.height-myHeight)/2;
    	features+=(features!='')?',':'';
    	features+=',left='+myLeft+',top='+myTop;
  	}
  	msgWindow=open(theURL,winName,features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight);
}

function abre_ventana(url_abre,ancho,alto)
{	
	OpenBrWindow(url_abre,'Infra'+alto,"scrollbars=no,toolbar=no,status=no,menubar=no,location=no,resizable=no",ancho,alto,'true');			
	
}		

function checkValidWhois(control)
{
  	var Dominio =control.value; 
	if(!checkValidDomain(Dominio,false))
	{
	  alert(Dominio+' No es un Dominio válido');
	  control.focus();
	  return false;
	}else{
		var aux=new String(Dominio);
		var puntos=aux.split(".");
		if(puntos.length>2)
		{
		   alert('Formato de dominio no válido. Solo dominio de primer nivel');
		   return false;
		}
	}
  return true;
}		
function checkValidDomain(campo_dominio,control_punto)
{	
	var specialChars="/\\(\\)><@,;:\\\\\\\"\\\\[\\]_*?¿'!¡{|}ºª<>Ññ€#&%¬=%`´";
	var validChars="\[^\\s" + specialChars + "\]";
	var atom=validChars + '+';
	var atomPat=new RegExp("^" + atom + "$");
	var valor_campo = campo_dominio;
	
	// 1 No vacio 
	if ( valor_campo == "" ) 			     {if(control_punto)alert("Falta nombre de Dominio");  return false;}
	
	// 2 Sin Metacaracteres solo de 0 - 9 a - z todo miniuscula
	
	if ( valor_campo.search(atomPat)==-1)    {if(control_punto)alert("El Nombre de Dominio tiene caracteres no permitidos");  return false;}
	
	// No empezar con -	
	if ( valor_campo.substr(0,1) == "-" ) {if(control_punto)alert("Nombre Dominio no puede comenzar con - ");  return false;}
	
	// No terminar con -
	b = valor_campo.length - 1;	
	// var.substring ( start, stop )
	// arranca en el numero mas chico y termina en el mas grande
	//a = valor_campo.substring( b, b-1);
		
	if ( valor_campo.substr( b , 1 ) == "-" ){if(control_punto)alert("Nombre Dominio no puede terminar con - ");  return false;}	
	
	// No puede tener .
	if (control_punto && valor_campo.search(".")==-1) 	{if(control_punto)alert("Nombre Dominio no puede tener . "); return false;}
	
	for ( i = 0 ; i < valor_campo.length ; i++)
	{
		var n;                                  //Declara la variable.
  		n = valor_campo.charCodeAt(i);

  		var numero = false;
  		var letra  = false;
  		var menos  = false;
  		 		
  		numero = esnumero(valor_campo.substr(i,1));
  		letra  = esletra(valor_campo.substr(i,1));
  		
  		if( n == 45 || (n==46 && control_punto==false))//guion y punto
  		{
  			menos = true;
  		}
  		  		
  		if( numero == false && letra == false && menos == false )
  		{
  			if(control_punto)alert("Hay caracteres no permitidos en el nombre del Dominio");
  			return false;
  		} 
	}
	
	return true;
}	
function esnumero(digito)
{
	var e = digito.charCodeAt(0);
	if( ( e >= 48 )  && ( e <= 57 ) )
	{
		return true;
	}
	else
	{ 
		return false;
	}
}

function esletra(digito_l)
{
	var e = digito_l.charCodeAt(0);
	if((e>=65 && e<=90) || ( e >= 97   &&  e <= 122 ) )
	{
		return true;
	}
	else
	{ 
		return false;
	}
}
function nuevoAjax(){
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
		 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
		} catch (E) {
		 xmlhttp = false;
		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}
