/********************************************************/
/*  Iguala la columna de la derecha al alto de la pag   */
/********************************************************/
window.onload=carga;

function carga() {

 var left=document.getElementById('menuderecha');
 var right=document.getElementById('cuerpoYDerecha');
 var prueba= document.getElementById('Anuncio5');
 if(navigator.appName == "Microsoft Internet Explorer")
 {
   //"You're using the Internet Explorer browser."
   if(right.offsetHeight>left.offsetHeight) {
    left.style.height=right.offsetHeight+"px";
   }
   else {
     right.style.height=left.offsetHeight+"px";
   }
 }
 else
 {
  if (prueba != null){
  //"You're using NOT the Internet Explorer browser."
  var y = 0;
  var x = 0;
  while (prueba.offsetParent) {
    x += prueba.offsetLeft;
    y += prueba.offsetTop;
    prueba = prueba.offsetParent;
  }
  } 
  prueba= document.getElementById('promocion');
  var y2 = 0;
  var x2 = 0;
  while (prueba.offsetParent) {
    x2 += prueba.offsetLeft;
    y2 += prueba.offsetTop;
    prueba = prueba.offsetParent;
  }
  if (y2>y)
  {
    left.style.height=y2+"px";
    right.style.height=y2+"px";
  }
  else
  {
    left.style.height=y+"px";
    right.style.height=y+"px";
  }
 }
}



/********************************************************/
/*  Iguala las dos capas que le llegan   */
/********************************************************/
function igualar(capa1,capa2) {
 var left=document.getElementById(capa1);
 var right=document.getElementById(capa2);
 if (left  && right){
   if(right.offsetHeight>left.offsetHeight) {
     left.style.height=right.offsetHeight+"px";
   }
   else {
     right.style.height=left.offsetHeight+"px";    
   }
}
}
/************************************************************/
/*  El primero de la primera capa se iguala a la suma de las*/ 
/* otras dos                                                */
/************************************************************/
function redimensionarPadre(capa1,capa2,capa3) {
 var padre=document.getElementById(capa1);
 var hija1=document.getElementById(capa2);
 var hija2=document.getElementById(capa3);
 var altura=hija1.offsetHeight+hija2.offsetHeight;
 padre.style.height=altura+"px";
}
/**********************************************************/
/*     Valida el formulario de alta de particulares       */
/**********************************************************/
function validaParticulares(nombreForm){
  var error=false;
  if(document.forms[nombreForm].marcaMoVe.value==""){
     document.forms[nombreForm].marcaMoVe.className="campoFormularioError"; 
     error=true;
  }else{
    document.forms[nombreForm].marcaMoVe.className =""; 
  }
  if(document.forms[nombreForm].mail!=null){
    if(document.forms[nombreForm].mail.value==""){    
       document.forms[nombreForm].mail.className="campoFormularioError"; 
       error=true;
    }else{
      if(validarMail(document.forms[nombreForm].mail.value)){
        document.forms[nombreForm].mail.className =""; 
      }else{
        document.forms[nombreForm].mail.className="campoFormularioError"; 
        error=true;
      }
    }
  }
  return error;
}

/**********************************************************/
/*     Valida el formulario de envía mails                */
/**********************************************************/
function validaServicioConcesionario(nombreForm){
  var error=false;
  if(document.forms[nombreForm].nombre1!=null){
    if(document.forms[nombreForm].nombre1.value==""){
       document.forms[nombreForm].nombre1.className="campoFormularioError"; 
       error=true;
    }else{
      document.forms[nombreForm].nombre1.className =""; 
    }
  }
  //Solo se valida para envia a un amigo
  if(document.forms[nombreForm].nombre2!=null && document.forms[nombreForm].idServicioConcesionario.value=='5'){
    if(document.forms[nombreForm].nombre2.value==""){
       document.forms[nombreForm].nombre2.className="campoFormularioError"; 
       error=true;
    }else{
      document.forms[nombreForm].nombre2.className =""; 
    }
  }
  if(document.forms[nombreForm].mail1!=null){
    if(document.forms[nombreForm].mail1.value==""){    
       document.forms[nombreForm].mail1.className="campoFormularioError"; 
       error=true;
    }else{
      if(validarMail(document.forms[nombreForm].mail1.value)){
        document.forms[nombreForm].mail1.className =""; 
      }else{
        document.forms[nombreForm].mail1.className="campoFormularioError"; 
        error=true;
      }
    }
  }
  //Solo se valida para envia a un amigo
  if(document.forms[nombreForm].mail2!=null && document.forms[nombreForm].idServicioConcesionario.value=='5'){
    if(document.forms[nombreForm].mail2.value==""){    
       document.forms[nombreForm].mail2.className="campoFormularioError"; 
       error=true;
    }else{
      if(validarMail(document.forms[nombreForm].mail2.value)){
        document.forms[nombreForm].mail2.className =""; 
      }else{
        document.forms[nombreForm].mail2.className="campoFormularioError"; 
        error=true;
      }
    }
  }
    return error;
}
/****************************************************/
/* FunciÃ³n para validar nÃºmeros                     */  
/****************************************************/
var digitos = "0123456789+";

function esDecimal(s)
{
        var result = true;
        var c;

        for (var i = 0; i < s.length; i++)
    {
            c = s.charAt(i);
        if ( !perteneceA(c,digitos) )
                {
                    // no es alfanumerico
                                result = false;
                break;
             }
        }
        return result;
}
function perteneceA(c,s)
{
    var result = false;
    for (var i = 0; i < s.length; i++)
    {
            if (c == s.charAt(i))
        {
                result = true;
            break;
        }
    }
    return result;
  }

/***********************************************************/
/*Funcion para validar un mail				   */
/***********************************************************/

function validarMail(valor) {

        if(valor=="")
        {
                return true;
        }
        else
        {
                tieneEspacio = false;
                tieneArroba = false;
                primeroArroba = 0;
                tienePunto = false;
                segundoPunto = 0;
                texArray = new Array();

                for (i = 0;  i < valor.length;  i++)
                {
                        if (valor.charAt(i) == ' ')
                        {
                                tieneEspacio = true;
                        }
                        else if (valor.charAt(i) == '@')
                        {
                                tieneArroba = true;
                                primeroArroba = i;
                        }
                        else if (valor.charAt(i) == '.')
                        {
                                tienePunto = true;
                                segundoPunto = i;
                        }
                        else
                        {
                                texArray[i]=0;
                        }
                }
                if ( (valor.length!=0) && ( texArray[primeroArroba-1]==0 ) && ( texArray[segundoPunto-1]==0 ) && ( texArray[segundoPunto+1]==0 ) && ( tieneEspacio == false )  &&  ( tieneArroba == true ) &&  ( tienePunto == true )  &&  ( primeroArroba<segundoPunto ) )
                        {
                                return true;
                        }
                        else  {
                                return false;
                        }
        }
}


/***********************************************************/
/*Funcion para validar un select*/
/***********************************************************/
function validaSelect(desplegable) {
   var indice=desplegable.selectedIndex;
   if(indice==0) {
      return false;
   }
   return true;
}


/************************************************************/
/*  Funcion para limitar los caracteres de un textarea       */
/************************************************************/


 function textCounter(field,  maxlimit) {   
   if (field.value.length > maxlimit)                    
    field.value = field.value.substring(0, maxlimit);    
  }  


/********************************************************/
/*Valida el formulario de buscar un vehiculo nuevo      */
/********************************************************/


function deMultipleaSencillo(campomultiple, campo){

 var txt = ''; 
 var entra=true;
 var obj = document.getElementById(campomultiple); 

  for (i=0; opt=obj.options[i]; i++) 
    if (opt.selected) {  
      if(entra){
	entra=false;
	txt=opt.value;
	}
       else{
	txt += ','+opt.value;
	} 
	}

   document.getElementById(campo).value=txt;

}



function validarBuscarSemiNuevo(){

var carro=false;

deMultipleaSencillo('modeloSemiM','modeloSemi');
deMultipleaSencillo('zonaM','zona');


   var entra=true;
   var txt='';
  for(i=0;i<document.getElementsByName("carroceriaM").length;i++){
       if(document.getElementsByName("carroceriaM")[i].checked==true){
         if(entra){
		entra=false;
		txt=document.getElementsByName("carroceriaM")[i].value;
		}
       	  else{
	        txt += ','+document.getElementsByName("carroceriaM")[i].value;
	  } }}

	document.getElementById('carroceria').value=txt;

  //Comprobamos que al menos algun campo esta seleccionado
  if(document.forms['buscadorNuevos'].cliente.value=="")
    if(document.forms['buscadorNuevos'].marca.value=="")
      if(document.forms['buscadorNuevos'].precioDesde.value=="-1")
        if(document.forms['buscadorNuevos'].precioHasta.value=="-1")
          if(document.forms['buscadorNuevos'].zonaM.value=="")
            if(document.forms['buscadorNuevos'].kmDesde.value=="-1")  
              if(document.forms['buscadorNuevos'].kmHasta.value=="-1")
                if(document.forms['buscadorNuevos'].combustible.value=="-1")
                  if(document.forms['buscadorNuevos'].annio.value=="-1"){
                    for(i=0;i<document.getElementsByName("carroceriaM").length;i++)
                      if(document.getElementsByName("carroceriaM")[i].checked==true)
                        carro=true;

                    if(carro==false){
                      document.getElementById('cBuscador').innerHTML="Debe seleccionar al menos un campo de busqueda";
                      return false;
                    }
                  }

  precioAnterior=document.forms['buscadorNuevos'].precioDesde.value/1;
  precioSiguiente=document.forms['buscadorNuevos'].precioHasta.value/1;

  if(document.forms['buscadorNuevos'].precioDesde.value!="-1" && document.forms['buscadorNuevos'].precioHasta.value!="-1"){
    if(precioSiguiente<precioAnterior){
      document.getElementById('cBuscador').innerHTML="El precio desde no puede ser posterior al precio hasta";
      return false;
    }
  }
  
  if(document.forms['buscadorNuevos'].kmDesde!=null){   
    kmAnterior=document.forms['buscadorNuevos'].kmDesde.value/1;
    kmSiguiente=document.forms['buscadorNuevos'].kmHasta.value/1;
    if(document.forms['buscadorNuevos'].kmDesde.value!="-1" && document.forms['buscadorNuevos'].kmHasta.value!="-1"){
      if(kmSiguiente<kmAnterior){
        document.getElementById('cBuscador').innerHTML="Los kil&oacute;metros desde no pueden ser posterior a los kil&oacute;metros hasta";
        return false;
      }
    }
  }
  document.getElementById('cBuscador').innerHTML="";
  return true;
}




/*********************************************************/
/*Valida el formulario de buscar un vehiculo nuevo o semi*/
/********************************************************/


function validarBuscar(){

deMultipleaSencillo('modeloNuevoM','modeloNuevo');
deMultipleaSencillo('marcaM','marca');


  var  entra=true;
  var  txt='';
  for(i=0;i<document.getElementsByName("carroceriaM").length;i++){
       if(document.getElementsByName("carroceriaM")[i].checked==true){
         if(entra){
		entra=false;
		txt=document.getElementsByName("carroceriaM")[i].value;
		}
       	  else{
	        txt += ','+document.getElementsByName("carroceriaM")[i].value;
	  } }}

	document.getElementById('carroceria').value=txt;
  if(document.forms['buscadorNuevos'].marca.value==""){
    document.getElementById('cBuscador').innerHTML="Debe seleccionar una marca";
   return false;
  }
  precioAnterior=document.forms['buscadorNuevos'].precioDesde.value/1;
  precioSiguiente=document.forms['buscadorNuevos'].precioHasta.value/1;

  if(document.forms['buscadorNuevos'].precioDesde.value!="-1" && document.forms['buscadorNuevos'].precioHasta.value!="-1"){
    if(precioSiguiente<precioAnterior){
      document.getElementById('cBuscador').innerHTML="El precio desde no puede ser posterior al precio hasta";
      return false;
    }
  }
  
  if(document.forms['buscadorNuevos'].kmDesde!=null){   
    kmAnterior=document.forms['buscadorNuevos'].kmDesde.value/1;
    kmSiguiente=document.forms['buscadorNuevos'].kmHasta.value/1;
    if(document.forms['buscadorNuevos'].kmDesde.value!="-1" && document.forms['buscadorNuevos'].kmHasta.value!="-1"){
    if(kmSiguiente<kmAnterior){
      document.getElementById('cBuscador').innerHTML="Los kil&oacute;metros desde no pueden ser posterior a los kil&oacute;metros hasta";
      return false;
    }
  }

  }
  document.getElementById('cBuscador').innerHTML="";
  return true;
}

/**************************************************/
/*Valida el formulario de comparar vehiculo        */
/**************************************************/

function validarComparar(){
  if( (document.forms['comparadorNuevos'].marcaCompara1.value=="" && document.forms['comparadorNuevos'].marcaCompara2.value=="" && document.forms['comparadorNuevos'].marcaCompara3.value=="")
    || (document.forms['comparadorNuevos'].marcaCompara1.value=="" && document.forms['comparadorNuevos'].marcaCompara2.value=="" )
    || (document.forms['comparadorNuevos'].marcaCompara2.value=="" && document.forms['comparadorNuevos'].marcaCompara3.value=="" )
    || (document.forms['comparadorNuevos'].marcaCompara3.value=="" && document.forms['comparadorNuevos'].marcaCompara1.value=="" )){
    document.getElementById('cBuscadorC').innerHTML="Debe seleccionar al menos dos marcas";
    return false;
  }

  if(document.forms['comparadorNuevos'].versionCompara1.value==document.forms['comparadorNuevos'].versionCompara2.value){
    document.getElementById('cBuscadorC').innerHTML="Debe seleccionar diferentes versiones";
    return false;
  }
 
  if(document.forms['comparadorNuevos'].versionCompara3.value!=""){
   if( (document.forms['comparadorNuevos'].versionCompara1.value==document.forms['comparadorNuevos'].versionCompara3.value)
      || (document.forms['comparadorNuevos'].versionCompara2.value==document.forms['comparadorNuevos'].versionCompara3.value)){
    document.getElementById('cBuscadorC').innerHTML="Debe seleccionar diferentes versiones";
    return false;
  }
  } 
 document.getElementById('cBuscadorC').innerHTML="";
 return true;
}

/**********************************************************/
/* FUNCION para formatear los miles con puntos            */
/**********************************************************/
function formatear( _valorInput, _valor, _valorHidden )
{
	var valor = eval("document.forms['0']."+_valorInput.name+".value");
	var queEs = "input";
	var valorInput = _valorInput;
	var valorHidden = _valorHidden;
	var valorTemp1 = new Array();
	var valorTemp2;
	var tempInput;
	var tempInput2;

	if( queEs == "input" )
	{
		if (separador == ".")
		{
			tempInput2 = valor.toString().replace(/\./gi, '');
			tempInput = tempInput2.replace(',', '.');
		}
		else if (separador == ",")
		{
			tempInput = valor.toString().replace(/\,/gi, '');
		}
		valor = tempInput;
	}
	else if ( queEs == "hidden" )
	{
			if ( valor.indexOf("E")!= -1)
			{
				posicion = valor.indexOf("E");
				valorTemp1[0] = valor.substr(0,posicion);
				valorTemp1[1] = valor.substr(posicion,valor.lenght);
				valorTemp2 = eval("1" + valorTemp1[1]);
				valor = eval( valorTemp1[0] * valorTemp2 );

				// ------------------------------------------------------------------

					if ( esNumero( valor, 'punto') )
					{
						decimalPosicionNumerica = valor.toString().indexOf(".");
					}
					else
					{
						decimalPosicionNumerica = -1;
					}
					if ( decimalPosicionNumerica == -1 )
        			{
						elementoEntero = valor;
        			}
        			else
        			{
            			elementoEntero = valor.toString().substr(0, decimalPosicionNumerica);
            			elementoDecimal = valor.toString().substr(decimalPosicionNumerica+1, valor.length);
        			}
					if ( elementoEntero == "" )
        			{
            			elementoEntero = "0";
        			}
        			if ( (decimalPosicionNumerica == -1) | (elementoDecimal.length < posicionesDecimales) )
        			{
            			for ( i=elementoDecimal.length; i<posicionesDecimales; i++)
        				{
                			elementoDecimal=elementoDecimal + "0";
            			}
        			}
        			else if (elementoDecimal.length > posicionesDecimales)
        			{
        			redondeo(elementoDecimal);
     			}
 valor = elementoEntero + "." + elementoDecimal;
	}
 }
 // formateamos el valor;;;;;
 if ( esNumero(valor, 'caracteres') )
    {
	if ( valor.toString().lastIndexOf(".") != -1 )
	{
		decimalPosicionNumerica = valor.toString().indexOf(".");
	}
	else
	{
		decimalPosicionNumerica = -1;
	}
	if ( decimalPosicionNumerica == -1 )
        {
        	elementoEntero = valor;
        }
        else
        {
			elementoEntero = valor.toString().substr(0, decimalPosicionNumerica);
			elementoDecimal =""; //valor.toString().substr(decimalPosicionNumerica+1, valor.length);
        }
        if ( elementoEntero == "" )
        {
            elementoEntero = "0";
        }
        if ( (decimalPosicionNumerica == -1) | (elementoDecimal.length < posicionesDecimales) )
        {
            for ( i=elementoDecimal.length; i<posicionesDecimales; i++)
        	{
                elementoDecimal=elementoDecimal + "0";
            }
        }
        else if (elementoDecimal.length > posicionesDecimales)
        {
            redondeo(elementoDecimal);
        }
        enteroVolteado = voltear(elementoEntero);
        parseEntero = parseInt(enteroVolteado.length/posicionesEntero);
        var num = 0;
        var j = 0;
        if(posicionesEntero<enteroVolteado.length)
        {
           for( i=0; i<parseEntero+enteroVolteado.length ;i++)
             {
			  		if ( num < posicionesEntero )
                    {
                        enteroVolteadoTemp = enteroVolteadoTemp + enteroVolteado.charAt(j);
                        num++;
                        j++;
                    }
                    else if ( num == posicionesEntero )
                    {
                        enteroVolteadoTemp = enteroVolteadoTemp + separador;
                        num = 0;
                     }
              }
              if ( enteroVolteadoTemp.charAt(enteroVolteadoTemp.length-1)==separador)
              {
                  enteroVolteadoTemp = enteroVolteadoTemp.substr(0, enteroVolteadoTemp.length-1);
              }
        }
        else
        {
            enteroVolteadoTemp = enteroVolteado;
        }
        elementoEntero2 = voltear(enteroVolteadoTemp);
	eval( "document.forms['0']."+_valorInput.name+".value = '" + elementoEntero2 + decimal + elementoDecimal + "';" );
	eval( "document.forms['0']."+_valorHidden.name+".value = '" + elementoEntero + "." + elementoDecimal + "';");

        elementoEntero = "";
        elementoDecimal = "";
        enteroVolteadoTemp = "";
        num = 0;
        j = 0;
   }
   else
   {
      eval( "document.forms['0']."+_valorInput.name+".value = '';" );
      eval( "document.forms['0']."+_valorHidden.name+".value = '';");
      eval( "document.forms['0']."+_valorInput.name+".focus();" );
   }
}

/**************************************/
/* Funcion para formatear euros      */
/**************************************/
function formateoEuro(numero){ 
    var sRes = ""; 
    var nNmb = "";
    if(numero!='' && numero!='-1' && numero!='0'){
     nNmb=numero+""; 
     for (var j, i = nNmb.length - 1, j = 0; i >= 0; i--, j++) 
        sRes = nNmb.charAt(i) + ((j > 0) && (j % 3 == 0)? ".": "") + sRes;       
     sRes+="&nbsp;&euro;" 
    }else{
     sRes+="A consultar";
    }
    return sRes; 
} 


/**************************************/
/* Funcion para formatear km          */
/**************************************/
function formateoKilometro(numero){ 
    var sRes = ""; 
    if(numero!='' && numero!='-1' && numero!='0'){
     sRes =numero+"&nbsp;km"; 
    }else{
     sRes+="";
    }
    return sRes; 
} 

/**************************************/
/* Funcion para formatear km          */
/**************************************/
function formateoBlanco(valor){ 
    var sRes = ""; 
    if(valor!='' && valor!='-1' && valor!='0'){
     sRes =valor; 
    }else{
     sRes+="";
    }
    return sRes; 
} 

/****************************************************/
/* Funcion que obtiene la url correcta de las fotos */
/****************************************************/
function getUrlFotos(url){
  if(url.indexOf("http://")==0)
    return url;
  else
    return "http://www.automercado.es/automercado/img/ofertas/"+url;
}


/****************************************************/
/* Funcion que obtiene la url correcta de las fotos con thumbnail*/
/****************************************************/
 function getUrlFotosThumbnail(url,carpetaImagen,contextPath,altura,anchura){
  if(url.indexOf("http://")==0)
    return url;
  else
{
  url = URLEncode(url);
    //return "http://www.automercado.es/automercado/img/ofertas/"+url;
    return contextPath+"/ThumbnailServlet?imagen="+carpetaImagen+"/"+url+"&altura="+altura+"&anchura="+anchura;
 }
}

/****************************************************/
/* Funcion que codifica una url */
/****************************************************/
function URLEncode (clearString) {
  var output = '';
  var x = 0;
  clearString = clearString.toString();
  var regex = /(^[a-zA-Z0-9_.]*)/;
  while (x < clearString.length) {
    var match = regex.exec(clearString.substr(x));
    if (match != null && match.length > 1 && match[1] != '') {
        output += match[1];
      x += match[1].length;
    } else {
      if (clearString[x] == ' ')
        output += '+';
      else {
        var charCode = clearString.charCodeAt(x);
        var hexVal = charCode.toString(16);
        output += '%' + ( hexVal.length < 2 ? '0' : '' ) + hexVal.toUpperCase();
      }
      x++;
    }
  }
  return output;
}

/****************************************************/
/* Funcion que obtiene la url correcta de las fotos */
/****************************************************/
function getUrlImagenes(url, path){
  if(url.indexOf("http://")==0)
    return url;
  else
    return "http://www.automercado.es/automercado/img/"+path+"/"+url;
}
