
var time_reaload=null;
var ventana=null;
var ventana_url=null;
var MSG_JS_POPUP_ALERT='La ventana emergente no se ha podido abrir debido a que su navegador la ha bloqueado.\nPor favor seleccione en su navegador la posibilidad de apertura de este tipo de ventanas.\n\nGracias';

function getradioSelection(group) {   for(var k=0;k<group.length;k++)     if(group[k].checked)         return k; } 


function check_window_reload(idpopup,url){

if (time_reaload==null){ventana=idpopup;ventana_url=url;time_reaload=setTimeout("check_window_reload(ventana,ventana_url)",600);}

if(ventana.closed){
	clearTimeout(time_reaload);
	window.location=ventana_url;
}else{
	setTimeout("check_window_reload(ventana,ventana_url)",600);
}

 


}


function info_promo(code,titulo){

var url="info_promo.asp?titulo="+titulo+"&code="+code;

newwindow=window.open(url,'Promociones','width=675, height=480, scrollbars=yes');
if(newwindow==null){alert(MSG_JS_POPUP_ALERT);}
if (window.focus) {newwindow.focus()}


}


function cargar_info(terminal,titulo){

var url="info_movil.asp?titulo="+titulo+"&id_terminal="+terminal;

newwindow=window.open(url,'Terminal','width=675, height=480, scrollbars=yes');
if(newwindow==null){alert(MSG_JS_POPUP_ALERT);}
if (window.focus) {newwindow.focus()}


}


function gestion_panel(url)

{

newwindow=window.open(url,'Admin','toolbar=0,location=0,directories=0,fullscreen=1,status=0,menubar=0,scrollbars=1,resizable=0');
if(newwindow==null){alert(MSG_JS_POPUP_ALERT);}
if (window.focus) {newwindow.focus()}
	

}



function contrato(){

newwindow=window.open('terms.asp?idioma='+GetCookie("pais"),'Contrato','width=580, height=480, scrollbars=yes');
if(newwindow==null){alert(MSG_JS_POPUP_ALERT);}
if (window.focus) {newwindow.focus()}
	
}

function contrato_mas(){

newwindow=window.open('http://www.masmovil.es/condiciones-de-contratacion?idioma='+GetCookie("pais"),'Contrato','width=600, height=500, scrollbars=yes');
if(newwindow==null){alert(MSG_JS_POPUP_ALERT);}
if (window.focus) {newwindow.focus()}
	
}


function validarFecha(dia, mes, anyo) {
    if (!anyo) return false;
    if (anyo<1850) return false;
    if (!mes) return false;
    if (!dia) return false;
    var test = new Date(anyo, mes, dia);
    if ( (test.getFullYear() != anyo) || (mes != test.getMonth()) || (dia != test.getDate()) ) return false;
    return true;
}


function ValidacionFecha(fecha, sep) {
    var numeros = "0123456789";
    var pos1 = fecha.indexOf(sep);
    var pos2 = fecha.indexOf(sep, pos1+1);
    var dia, mes, ano;
    var i;

    if ((pos1 == -1)||(pos2 == -1)) {
        return false;
    }
    dia = fecha.substring(0, pos1);
    mes = fecha.substring(pos1+1, pos2);
    ano = fecha.substring(pos2+1, fecha.length);

    if ((dia.length < 1)||(dia.length > 2)) {
        return false;
    }
    for(i=0;i<dia.length;i++) {
        if (numeros.indexOf(dia.charAt(i)) == -1) {
            return false;
        }
    }

    if (dia < 1) {
        return false;
    }

    if ((mes.length < 1)||(mes.length > 2)) {
        return false;
    }
    for(i=0;i<mes.length;i++) {
        if (numeros.indexOf(mes.charAt(i)) == -1) {
            return false;
        }
    }

    if (ano.length != 4) {
        return false;
    }
    for(i=0;i<ano.length;i++) {
        if (numeros.indexOf(ano.charAt(i)) == -1) {
            return false;
        }
    }

    if (parseInt(ano,10) < 1880) {
        return "";
    }

    if (validarFecha(parseInt(dia,10), parseInt(mes,10), parseInt(ano,10))) {
        if (dia.length == 1) dia = "0" + dia;
        if (mes.length == 1) mes = "0" + mes;
        return true;
    }
}




function isMAIL(s){

   	reMail = /^[a-zA-Z0-9]+[&\.a-zA-Z0-9_-]*@[a-zA-Z0-9_-]+[\.a-zA-Z0-9_-]*\.[a-zA-Z0-9_-]{2,}$/;

	s=strtrim(s);



	if ((s.length)==0){

	   	return false;

	}else{

		return reMail.test(s);

	}

}



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 imgchange(objeto,imgstr){

objeto.src=imgstr;



}





function val_empty(str){

var resul=true;



	if(str.length==0){

		resul=false;

	}else{

		if ( str.indexOf(' ', 0) != -1) {

			resul=false;

		}

	}

	

return resul;

}





function strtrim(inputString) 

{





	var returnString = inputString;

	var removeChar=' ';

	if (removeChar.length)

	{

	  while(''+returnString.charAt(0)==removeChar)

		{

		  returnString=returnString.substring(1,returnString.length);

		}

		while(''+returnString.charAt(returnString.length-1)==removeChar)

	  {

	    returnString=returnString.substring(0,returnString.length-1);

	  }

	}



	return returnString;

}





function Ltrim(strstring){
    //---- Elimina los espacios terminales por la izquierda. ---------------
    while ((strstring!='')&&(strstring.substring(0,1)==' ')) {
        //Extraigo desde el caracter en posi=1 hasta el último, de pos=.length-1
        idxultimocar=(strstring.length-1);
        strstring=strstring.substring(1,idxultimocar+1)
    }
    return strstring;
  }


  function Rtrim(strcadena){
    //---- Elimina los espacios terminales por la derecha. ---------------
    if (strcadena!=''){
      idxultimocar=(strcadena.length-1);
      while ((strcadena!='')&&(strcadena.substring(idxultimocar,idxultimocar+1))==' '){
        //Extraigo desde el caracter en posi=1 hasta el último, de pos=.length-1
        strcadena=strcadena.substring(0,idxultimocar)
        idxultimocar=(strcadena.length-1);
      }
    }
    return strcadena;
  }

  function Trim(strcadena){
    strcadena=Rtrim(strcadena);
    strcadena=Ltrim(strcadena);
    return strcadena;
  }









function esDigito(cadenaEntrada)
{
	cadenaEntrada=strtrim(cadenaEntrada);
	if (val_empty(cadenaEntrada)){
		for (i=0;i<cadenaEntrada.length;i++)
		{

			if  ( isNaN(parseInt(cadenaEntrada.substring(i,i+1),10)) ) return (false);	//Netscape
	
			if ((cadenaEntrada.substring(i,i+1))!=(parseInt(cadenaEntrada.substring(i,i+1),10))) return (false);	//Explorer


		}
		return (true);
	}else{
		return false;
	}

}





function cardval(s) {


	// remove non-numerics
	var v = "0123456789";
	var w = "";

	for (i=0; i < s.length; i++) {
		x = s.charAt(i);
		if (v.indexOf(x,0) != -1)
			w += x;
	}

// validate number
	j = w.length / 2;

	if (j < 6.5 || j > 8 || j == 7) return false;

	k = Math.floor(j);
	m = Math.ceil(j) - k;
	c = 0;

	for (i=0; i<k; i++) {
		a = w.charAt(i*2+m) * 2;
		c += a > 9 ? Math.floor(a/10 + a%10) : a;
	}

	for (i=0; i<k+m; i++) c += w.charAt(i*2+1-m) * 1;

	return (c%10 == 0);

}




function validaCC(e,o,d,n) {

	if (e.length<3){return false;}
	if (o.length<3){return false;}
	if (d.length<1){return false;}
	if (n.length<3){return false;}

	var pesos = new Array (6,3,7,9,10,5,8,4,2,1);

	var total=e*10000+o*1;

	var acc=0;
	for (var i=0;i<8;i++){
		var c = total%10;
		acc	= acc + c*pesos[i];
		total=(total-c)/10;
	}
	var dig1=acc%11;
	dig1=11-dig1;
	if (dig1==10) dig1=1;
	if (dig1==11) dig1=0;


	total=n;
	acc=0;

	for (var i=0;i<10;i++){
		var c = total%10;
		acc	= acc + c*pesos[i];
		total=(total-c)/10;
	}
	var dig2=acc%11;
	dig2=11-dig2;
	if (dig2==10) dig2=1;
	if (dig2==11) dig2=0;


	var dig=dig1*10+dig2;

	if (d!=dig) return false;
	return true;
}


function validaNif(cadenaNif)
{


	var valoresNif= new Array ("0","1","2","3","4","5","6","7","8","9","K","L","X");
	var valoresCif= new Array ("A","B","C","D","E","F","G","H","N","P","Q","S");
	var controlNif = new Array ("T","R","W","A","G","M","Y","F","P","D","X","B","N","J","Z","S","Q","V","H","L","C","K","E");
	var controlCifLetras = new Array ("A","B","C","D","E","F","G","H","I","J");



	while (cadenaNif.length<9) cadenaNif = "0" + cadenaNif;

	caracterControl=cadenaNif.substring(8,9).toUpperCase();


	//TIPO DE NIF
	primerCaracter=cadenaNif.substring(0,1).toUpperCase();

	var tipo="-";

	for (i=0;i<valoresNif.length;i++) { if (valoresNif[i]==primerCaracter) tipo="NIF";  }



	if (tipo=="-"){
		for (i=0;i<valoresCif.length;i++) {  if (valoresCif[i]==primerCaracter) tipo="CIF";  }
	}




	if (tipo=="-") return (5);		//El primer caracter del nif no es válido.

	if (tipo=="NIF") {

		if (primerCaracter=="X"){
			numero=cadenaNif.substring(1,8);
		} else {
			numero=cadenaNif.substring(0,8);
		}

		if (!esDigito(numero)) return 3;   //Parte numérica del Nif no válida

		caracterControlCalculado=controlNif [((parseFloat(numero)%23))];   //El algoritmo dice que al resto hay que sumarle 1, eso lo hacemos al indexar el array ya que los indices empiezan en 0



		if (caracterControl != caracterControlCalculado) return 4;   //Carácter Control incorrecto

	}else if (tipo=="CIF"){

		if (primerCaracter=="N") {
			numero=cadenaNif.substring(4,8);
		}else {
			numero=cadenaNif.substring(1,8);
		}



		if (!esDigito(numero)) return 3;   //Parte numérica del Cif no válida

		caracterControlCalculado = 10 - ( (
							 Math.floor( 0.2*parseInt(cadenaNif.substring(1,2),10) ) +
							 ( 2*parseInt(cadenaNif.substring(1,2),10) %10) +
							  Math.floor( 0.2*parseInt(cadenaNif.substring(3,4),10) ) +
							 ( 2*parseInt(cadenaNif.substring(3,4),10) %10) +
							  Math.floor( 0.2*parseInt(cadenaNif.substring(5,6),10) ) +
							 ( 2*parseInt(cadenaNif.substring(5,6),10) %10) +
							  Math.floor( 0.2*parseInt(cadenaNif.substring(7,8),10) ) +
							 ( 2*parseInt(cadenaNif.substring(7,8),10) %10) +
							 parseInt(cadenaNif.substring(2,3),10) +
							 parseInt(cadenaNif.substring(4,5),10) +
							 parseInt(cadenaNif.substring(6,7),10)
							 )% 10);



		if ((primerCaracter=="N") ||(primerCaracter=="P") || (primerCaracter=="Q") || (primerCaracter=="S") ) {
			caracterControlCalculado = controlCifLetras[caracterControlCalculado-1];
		}


		if (caracterControlCalculado==10) caracterControlCalculado=0;
		if (caracterControl != caracterControlCalculado) return 4;   //Carácter Control incorrecto
	}
	return 0;  //todo bien.
}






/////////////// COOKIE /////////////////


function SetCookie (name, value,ndias) {  

var exp = new Date(); 
exp.setTime(exp.getTime() + (ndias*24*60*60*1000));

var expires = exp;  
var path = null;  
var domain = null;  
var secure = true;  
document.cookie = name + "=" + escape (value) + 
((expires == null) ? "" : ("; expires=" + expires.toGMTString()));
}


function getCookieVal (offset) {  
var endstr = document.cookie.indexOf (";", offset);  
if (endstr == -1)    
endstr = document.cookie.length;  
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {  
var arg = name + "=";  
var alen = arg.length;  
var clen = document.cookie.length;  
var i = 0;  
while (i < clen) {    
var j = i + alen;    
if (document.cookie.substring(i, j) == arg)      
return getCookieVal (j);    
i = document.cookie.indexOf(" ", i) + 1;    
if (i == 0) break;   
}  
return null;
}

//////////////////////////////








function GetXmlHttpObject(){
var xmlhttp=null;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = null;
}
}

if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}





