var consulta = false;
if (window.XMLHttpRequest) 
{
	consulta = new XMLHttpRequest();
}
function BuscarMarcas(field)
{
	if (window.ActiveXObject) {
    	try 
		{
            	consulta = new ActiveXObject("Msxml2.XMLHTTP");
       	} 
		catch(e) 
		{
        	try 
			{
                consulta = new ActiveXObject("Microsoft.XMLHTTP");
            } 
			catch(e) 
			{
                consulta = false;
            }
        }
    }

    if (consulta) 
	{
		var valor=(field.value == null)?field:field.value;
		//alert(valor);
        consulta.onreadystatechange = processReqChange1;
		UrL="../AutosUsados/ProcesarBusquedas.php?tb=1&idf=" + encodeURIComponent(valor);
		//alert(UrL);
        consulta.open("GET", UrL,true);
        consulta.send(null);
    }
}
function processReqChange1() 
{
    var result = document.getElementById("combomarca");
	
    if (consulta.readyState == 4 && consulta.status == 200) 
	{
        result.innerHTML = consulta.responseText;
		consulta = false;
		
    }
	else
	{
        //result.innerHTML = "Buscando ...";
    }
}
function BuscarCategoria(field)
{
	if (window.ActiveXObject) {
    	try 
		{
            	consulta = new ActiveXObject("Msxml2.XMLHTTP");
       	} 
		catch(e) 
		{
        	try 
			{
                consulta = new ActiveXObject("Microsoft.XMLHTTP");
            } 
			catch(e) 
			{
                consulta = false;
            }
        }
    }

    if (consulta) 
	{
        consulta.onreadystatechange = processReqChange2;
		UrL="../AutosUsados/ProcesarBusquedas.php?tb=2&idm=" + encodeURIComponent(field.value);
		//alert(UrL);
        consulta.open("GET", UrL,true);
        consulta.send(null);
    }
}
function processReqChange2() 
{
    var result = document.getElementById("combocategoria");
	
    if (consulta.readyState == 4 && consulta.status == 200) 
	{
        result.innerHTML = consulta.responseText;
		consulta = false;
		
    }
	else
	{
        //result.innerHTML = "Buscando ...";
    }
}
function jsCargarPaginaProducto(producto_combo,idm,idc,guid)
{
	UrL="index.php?opcion=producto&idm="+idm+"&idc="+idc+"&idp="+producto_combo.value+"&Guid="+guid;
	//alert(UrL);
	//sHref="familia.php?opcion=buscar&buscar="+nombre;
	window.location.href=UrL;
}
function jsAbrirPopUp(Url,ancho,alto)
{
	sHref=Url;
	vef=window.open(sHref,"vef","width="+ancho+",height="+alto+",scrollbars=0");
	vef.focus();
}
function jsFotoMedia(foto){
	document.all['fmedia'].src='../../Renmor.Base/Imagenes/'+foto;
}
function jsMostrarDivFull()
{
	if(document.all.Full.checked)
	{
		document.all.Express.checked=false;
		document.getElementById('DivCotizacionFull').style.display = 'block';
		document.getElementById('DivCotizacionExpress').style.display = 'none';
	}
}
function jsIniciarDiv()
{
	document.getElementById('DivCotizacionFull').style.display = 'none';
	document.getElementById('DivCotizacionExpress').style.display = 'none';
}
function jsMostrarDivExpress()
{
	if(document.all.Express.checked)
	{
		document.all.Full.checked=false;
		document.getElementById('DivCotizacionFull').style.display = 'none';
		document.getElementById('DivCotizacionExpress').style.display = 'Block';
	}
}

function jsValidarCotizacionExpressSolicitud(){
	if(!checkField(document.all.nombre,isName,false,'Ingrese bien su Nombre'))return false;
	if(!checkField(document.all.apellido,isName,false,'Ingrese bien su Apellido'))return false;
	if(!checkField(document.all.telefono,isPhoneNumber,false,'Ingrese bien su telefono'))return false;
	if(!checkField(document.all.email,isEmail,false,'Ingrese bien su correo electronico'))return false;
	return jsVerificaCotizacionSolicitud();
}
function jsVerificaCotizacionSolicitud(){
	if(!isComboBox(document.all.marca.value)){ alert('Ingrese bien el dato');document.all.marca.focus();return false;}
	if(!checkField(document.all.modelo,isName,false,'Ingrese bien su Nombre'))return false;
	if(!isComboBox(document.all.sucursal.value)){ alert('Ingrese bien el dato');document.all.sucursal.focus();return false;}
	return true;
}
function jsValidarCotizacionExpress(){
	if(!checkField(document.all.nombre,isName,false,'Ingrese bien su Nombre'))return false;
	if(!checkField(document.all.apellido,isName,false,'Ingrese bien su Apellido'))return false;
	if(!checkField(document.all.telefono,isPhoneNumber,false,'Ingrese bien su telefono'))return false;
	if(!checkField(document.all.email,isEmail,false,'Ingrese bien su correo electronico'))return false;
	return jsVerificaSolicitud();
}
function jsValidarCotizacion(){
	if(!checkField(document.all.nombre,isName,false,'Ingrese bien su Nombre'))return false;
	if(!checkField(document.all.apellido,isName,false,'Ingrese bien su Apellido'))return false;
	if(!checkField(document.all.telefono,isPhoneNumber,false,'Ingrese bien su telefono'))return false;
	if(!checkField(document.all.email,isEmail,false,'Ingrese bien su correo electronico'))return false;
	return true;
}
function jsValidarRegistroUsuario(){
	if(!ValidaRut(document.all.rut))return false;
	if(!checkField(document.all.nombre,isName,false,'Ingrese bien su Nombre'))return false;
	if(!checkField(document.all.paterno,isName,false,'Ingrese bien su Apellido'))return false;
	if(!checkField(document.all.telefono,isPhoneNumber,false,'Ingrese bien su telefono'))return false;
	if(!checkField(document.all.email,isEmail,false,'Ingrese bien su correo electronico'))return false;
	return true;
}
function jsValidarRegistroAccesoUsuario(){
	if(!checkField(document.all.username,isAlphanumeric,false,'Ingrese bien su Nombre de usuario'))return false;
	if(!checkField(document.all.password,isAlphanumeric,false,'Ingrese bien su password'))return false;
	if(!checkField(document.all.password2,isAlphanumeric,false,'Repita su password'))return false;
	if(!jsVerificarPassword(document.all.password,document.all.password2,'Password no coinciden'))return false;
	return true;
}
function jsVerificarPassword(p1,p2,s){
	if(p1.value==p2.value)return true;
	else{ 
		alert(s);
		p2.value="";
		p2.focus();
		return false; 
	}
}
/*
Variables y funciones que verifican
*/
var defaultEmptyOK = false
var checkNiceness = true;
var digits = "0123456789";
var lowercaseLetters = "abcdefghijklmnopqrstuvwxyzáéíóúñü"
var uppercaseLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZÁÉÍÓÚÑ"
var whitespace = " \t\n\r";
var phoneChars = "()-+ ";
var mMessage = "Error: no puede dejar este espacio vacio"
var pPrompt = "Error: ";
var pAlphanumeric = "ingrese un texto que contenga solo letras y/o numeros";
var pAlphabetic   = "ingrese un texto que contenga solo letras";
var pInteger = "ingrese un numero entero";
var pNumber = "ingrese un numero";
var pPhoneNumber = "ingrese un número de teléfono";
var pEmail = "ingrese una dirección de correo electrónico válida";
var pName = "ingrese un texto que contenga solo letras, numeros o espacios";
var pNice = "no puede utilizar comillas aqui";
var pRut = "Rut Invalido";

function isComboBox(s){
	 if(s == "-1"){ return false;}
	 else {return true;}
}
function makeArray(n) {
   for (var i = 1; i <= n; i++){
      this[i] = 0
   } 
   return this
}

function isEmpty(s){   
	return ((s == null) || (s.length == 0))
}

function isWhitespace (s){   
	var i;
    if (isEmpty(s)) return true;
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        // si el caracter en que estoy no aparece en whitespace,
        // entonces retornar falso
        if (whitespace.indexOf(c) == -1) return false;
    }
    return true;
}
function stripCharsInBag (s, bag)
{   var i;
    var returnString = "";
    // Buscar por el string, si el caracter no esta en "bag", 
    // agregarlo a returnString    
    for (i = 0; i < s.length; i++)
    {   var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }

    return returnString;
}
function stripCharsNotInBag (s, bag)
{   var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) != -1) returnString += c;
    }

    return returnString;
}

function ValidaRut(r){
	if (r.value == ""){
		alert("Ingrese su Rut");
		r.value="";
		r.focus();
		return false;
	}
	rut=r.value;
	var count=0;
	var count2=0;
	var factor=2;
	var suma=0;
	var sum=0;
	var digito=0;
	count2=rut.length - 1;
	
	while(count < rut.length)
	{
		sum = factor * (parseInt(rut.substr(count2,1))); 
		suma = suma + sum;
		sum=0;
		count = count + 1;
		count2 = count2 - 1;
		factor = factor + 1;
		
		if(factor > 7)
		{
			factor=2; 
		} 	
	}	
	digito= 11 - (suma % 11)
	if(digito==11)
	{
		digito=0;
	}	
	if(digito==10)
	{
		digito="k";
	}	
	if(digito==document.all.digito.value)
	{
		return true;
	}
	else
	{
		alert("Dígito Verificador No Coincide !!");
		document.all.digito.value="";
		document.all.digito.focus();
		return false;	
	}
}
function stripWhitespace (s)
{   return stripCharsInBag (s, whitespace)
}

function charInString (c, s)
{   for (i = 0; i < s.length; i++)
    {   if (s.charAt(i) == c) return true;
    }
    return false
}

function stripInitialWhitespace (s)
{   var i = 0;
    while ((i < s.length) && charInString (s.charAt(i), whitespace))
       i++;
    return s.substring (i, s.length);
}

function isLetter (c)
{
    return( ( uppercaseLetters.indexOf( c ) != -1 ) ||
            ( lowercaseLetters.indexOf( c ) != -1 ) )
}

function isDigit (c)
{   return ((c >= "0") && (c <= "9"))
}

function isLetterOrDigit (c)
{   return (isLetter(c) || isDigit(c))
}

function isInteger (s)
{   var i;
    if (isEmpty(s)) 
       if (isInteger.arguments.length == 1) return defaultEmptyOK;
       else return (isInteger.arguments[1] == true);
    
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if( i != 0 ) {
            if (!isDigit(c)) return false;
        } else { 
            if (!isDigit(c) && (c != "-") || (c == "+")) return false;
        }
    }
    return true;
}


function isNumber (s)
{   var i;
    var dotAppeared;
    dotAppeared = false;
    if (isEmpty(s)) 
       if (isNumber.arguments.length == 1) return defaultEmptyOK;
       else return (isNumber.arguments[1] == true);
    
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if( i != 0 ) {
            if ( c == "." ) {
                if( !dotAppeared )
                    dotAppeared = true;
                else
                    return false;
            } else     
                if (!isDigit(c)) return false;
        } else { 
            if ( c == "." ) {
                if( !dotAppeared )
                    dotAppeared = true;
                else
                    return false;
            } else     
                if (!isDigit(c) && (c != "-") || (c == "+")) return false;
        }
    }
    return true;
}

function isAlphabetic (s)
{   var i;

    if (isEmpty(s)) 
       if (isAlphabetic.arguments.length == 1) return defaultEmptyOK;
       else return (isAlphabetic.arguments[1] == true);
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is letter.
        var c = s.charAt(i);

        if (!isLetter(c))
        return false;
    }
    return true;
}

function isAlphanumeric (s)
{   var i;

    if (isEmpty(s)) 
       if (isAlphanumeric.arguments.length == 1) return defaultEmptyOK;
       else return (isAlphanumeric.arguments[1] == true);

    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (! (isLetter(c) || isDigit(c) ) )
        return false;
    }

    return true;
}


function isName (s)
{
    if (isEmpty(s)) 
       if (isName.arguments.length == 1) return defaultEmptyOK;
       else return (isAlphanumeric.arguments[1] == true);
    
    return( isAlphanumeric( stripCharsInBag( s, whitespace ) ) );
}

function isPhoneNumber (s)
{   var modString;
    if (isEmpty(s)) 
       if (isPhoneNumber.arguments.length == 1) return defaultEmptyOK;
       else return (isPhoneNumber.arguments[1] == true);
    modString = stripCharsInBag( s, phoneChars );
    return (isInteger(modString))
}

function isEmail (s)
{
    if (isEmpty(s)) 
       if (isEmail.arguments.length == 1) return defaultEmptyOK;
       else return (isEmail.arguments[1] == true);
    if (isWhitespace(s)) return false;
    var i = 1;
    var sLength = s.length;
    while ((i < sLength) && (s.charAt(i) != "@"))
    { i++
    }

    if ((i >= sLength) || (s.charAt(i) != "@")) return false;
    else i += 2;

    while ((i < sLength) && (s.charAt(i) != "."))
    { i++
    }

    if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
    else return true;
}

function isNice(s)
{
        var i = 1;
        var sLength = s.length;
        var b = 1;
        while(i<sLength) {
                if( (s.charAt(i) == "\"") || (s.charAt(i) == "'" ) ) b = 0;
                i++;
        }
        return b;
}

function statBar (s)
{   window.status = s
}

function warnEmpty (theField)
{   theField.focus()
    alert(mMessage)
    statBar(mMessage)
    return false
}

function warnInvalid (theField, s)
{   theField.focus()
    theField.select()
    alert(s)
    statBar(pPrompt + s)
    return false
}
function checkField (theField, theFunction, emptyOK, s)
{   
    var msg;
    if (checkField.arguments.length < 3) emptyOK = defaultEmptyOK;
    if (checkField.arguments.length == 4) {
        msg = s;
    } else {
        if( theFunction == isAlphabetic ) msg = pAlphabetic;
        if( theFunction == isAlphanumeric ) msg = pAlphanumeric;
        if( theFunction == isInteger ) msg = pInteger;
        if( theFunction == isNumber ) msg = pNumber;
        if( theFunction == isEmail ) msg = pEmail;
        if( theFunction == isPhoneNumber ) msg = pPhoneNumber;
        if( theFunction == isName ) msg = pName;
    }
    
    if ((emptyOK == true) && (isEmpty(theField.value))) return true;

    if ((emptyOK == false) && (isEmpty(theField.value))) 
        return warnEmpty(theField);

    if ( checkNiceness && !isNice(theField.value))
        return warnInvalid(theField, pNice);

    if (theFunction(theField.value) == true) 
        return true;
    else
        return warnInvalid(theField,msg);

}
/*Funciones del cotizador */

function simula(pie22,Cuotas2,xprecio2,xtasa1,xtasa2,xtasa3,xtasa4){


	var xpie = parseInt(document.getElementById(pie22).value);
	var xcuota = parseInt(document.getElementById(Cuotas2).value);
	var xprecio_ = parseInt(document.getElementById(xprecio2).value);
	var xmonto2 = parseInt(xprecio_ - xpie);
	var xmonto = parseInt(document.getElementById(xprecio2).value);
	//==========================================================	
	if  (xcuota >= 4 && xcuota <= 36 && xmonto2 >= 0 && xmonto2 <= 3499999 ){var xtasa = xtasa1 };	
	if  (xcuota >= 37 && xcuota <= 60 && xmonto2 >= 0 && xmonto2 <= 3499999 ){var xtasa = xtasa2 };	
	if  (xcuota >= 4 && xcuota <= 36 && xmonto2 >= 3500000 && xmonto2 <= 999999999 ){var xtasa = xtasa3 };	
	if  (xcuota >= 37 && xcuota <= 60 && xmonto2 >= 3500000 && xmonto2 <= 999999999 ){var xtasa = xtasa4 };
	//==========================================================	
	var xtasaprima = (xtasa/100);
	var xvalor_financiar = (xmonto - xpie);
	var xvalorinteres = xvalor_financiar * xtasaprima;
	var xvalor_cuota = (xvalorinteres + xvalor_financiar) / xcuota;
	if (xvalor_cuota > 0){
		document.getElementById('total3').value = "$ "+ insertapuntos(Math.round(xvalor_cuota));
	}else {document.getElementById('total3').value = "$0";} 
	document.getElementById('diferencia2').value = "$ "+ insertapuntos(Math.round(xmonto-xpie));

}
function insertapuntos(strval)
{
	var A = new Array();
	var strtemp = new String(strval);
	if(strtemp.length > 0){
		strtemp = parseInt(strtemp,10);
		strtemp = new String(strtemp);
		if (strtemp.length > 3){
			for(var i = 0; strtemp.length > 3; i++){
				A[i] = Right(strtemp,3);
				strtemp /= 1000;
				strtemp=new String(strtemp);
				if (strtemp.indexOf('.') != -1){
					strtemp = strtemp.substr(0,strtemp.indexOf('.'));
				}
			}
			for(i-- ;i >= 0 ;i--){
				strtemp = strtemp + "." + A[i];
			}
		}
	}
	return(strtemp);
}

function checkDecimals(fieldValue) 
{
	decallowed = 0;  // cantidad de decimales
	if (isNaN(fieldValue) || fieldValue == ""){
		return false;
	}
	else{
		if (fieldValue.indexOf('.') == -1) fieldValue += ".";
		dectext = fieldValue.substring(fieldValue.indexOf('.')+1, fieldValue.length);
		if (dectext.length > decallowed){
			return false;
		}else {
			return true;
		}
	}
}
function formateo_monto(obj2,original2,titulo)
{   obj = document.getElementById(obj2);
    original = document.getElementById(original2);
	//alert('entre');
	var tmpInt = 0;
	if (obj.value != ""){
		if (checkDecimals(obj.value)==false){
			alert("Por favor ingresar sólo números en " + titulo);		
			obj.value = "";
			original.value = "";
			obj.focus();
			return false;
		}
		tmpInt = parseInt(obj.value,10);
		obj.value = new String(tmpInt);
		original.value = obj.value;
		obj.value = insertapuntos(obj.value);
	}
	return true;
	
}
function Right(strvar,intcant)
{
	strtemp = "";
	intlargo = strvar.length -1;
	for(i = 1;i <= intcant; i++){
		strtemp = strtemp + strvar.charAt(intlargo);
		intlargo--;
	}
	strtmp2=""
	for(intlargo = strtemp.length -1; intlargo >=0; intlargo--){
		strtmp2 = strtmp2 + strtemp.charAt(intlargo);
	}
	return(strtmp2);
}

function valor_original(obj2,original2)
{	obj = document.getElementById(obj2);
	original = document.getElementById(original2);
	if((obj.value !="") && (original.value != "")){
		obj.value = original.value;
	}else{
		original.value = "";
		obj.value = "";
	}
}
function jsVerificaSolicitud(){
	var n_cuotas = document.form.Cuotas.value;
	var pie = document.form.pie2.value;
	var sucursal = document.form.Precio2.value;
	if(sucursal==''){alert('Debe Ingresar un monto'); document.form.Precio2.focus(); return false;}
	if(pie==''){alert('Debe Ingresar el monto de pie'); document.form.Pie.focus(); return false;}
	if(n_cuotas=='-1'){alert('Debe Ingresar el numero de cuotas'); document.form.Cuotas.focus(); return false;}
	return true;
}