// INICIALIZADOR DE OBJETO AJAX
function init() {
    try {
        objetus = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try {
            objetus= new ActiveXObject("Microsoft.XMLHTTP");
        } catch (E) {
            objetus= false;
        }
    }
    if (!objetus && typeof XMLHttpRequest!='undefined')
        objetus = new XMLHttpRequest();
	
    return objetus
}

// BROWSERTYPE: DEVUELVE "document.all" O "document.getElementById"
function browserType(objeto){
    /* Recibe cualquier tipo de objeto, verifica en que browser esta laburando
	el usuario y en base a eso retorna el comando de selecion de objeto en un
	documento */
    if(document.all){
        return document.all[objeto];
    }
    else{
        return document.getElementById(objeto);
    }
}

//-- DESBLOQUEA EL FORMULARIO
function unlockForm(lockForm)
{
    //alert(browserType('code'));
    browserType('code').disabled = (lockForm ? true : false);
    browserType('nombre').disabled = (lockForm ? true : false);
    browserType('copete').disabled = (lockForm ? true : false);
    browserType('descripcion').disabled = (lockForm ? true : false);
    browserType('precio1').disabled = (lockForm ? true : false);
    browserType('precio2').disabled = (lockForm ? true : false);
    browserType('moneda1').disabled = (lockForm ? true : false);
    browserType('moneda2').disabled = (lockForm ? true : false);
    //browserType('rating').disabled = false;
    browserType('posicion').disabled = (lockForm ? true : false);
    browserType('imagen1').disabled = (lockForm ? true : false);
    browserType('imagen2').disabled = (lockForm ? true : false);
    browserType('active').disabled = (lockForm ? true : false);
    browserType('new').disabled = (lockForm ? true : false);
    browserType('guardar').disabled = (lockForm ? true : false);
    browserType('cancelar').disabled = (lockForm ? true : false);
}


// CARGADOR DE DATOS DE UNA PAGINA
var ArrayPages;
var ArrayTables;
var indexPages=0;

function loadArrayPagesData(){
    if(ArrayPages.length>0 && indexPages<ArrayPages.length)
    {
        loadPageData(ArrayPages[indexPages], ArrayTables[indexPages], true); //-- CARGA LOS DATOS DE LA PAGINA Y PIDE RESPUESTA
        indexPages++;
    }
    else
    {
        if(!(ArrayPages.length>0))
        {
            alert('ArrayPages esta vacio');
        }
		
        indexPages = 0; //-- VUELVO A INICIALIZAR EL CONTADOR DE SECCIONES
    }
}

// CARGADOR DE DATOS DE UNA PAGINA
function loadPageData(url,table,recursivePage){
    _objetus=init();
    _objetus.open("POST", url, true);

    _objetus.onreadystatechange = function(){
        if (_objetus.readyState==4)
        {
            //alert(_objetus.responseText);
            if(_objetus.responseText != ""){
                browserType(table).innerHTML = _objetus.responseText;
            } else {
                browserType(table).innerHTML = "No se encontraron datos";
            }
			
            if(recursivePage)
            {
                loadArrayPagesData(true); //-- Carga los datos de la siguiente seccion
            }
			
            return true;
        }
        else{
            return null;
        }
    }
	
    _objetus.send(null);
}

// CARGADOR DE DATOS EN LISTAS PARA EL BACKEND
function loadListData(idValue,strCombo,table){
    var cmbObj = "";
    var cmbOptions = new Array();
    var j = 0;
	
    cmbObj = browserType(strCombo);
	
		
    cmbObj.length = 0;
    cmbObj.options[0] = new Option("Cargando...", "");
    cmbObj.disabled = true;
	
    _objetus=init();
    _objetus.open("POST", "../functions.php?action=GetListData&table="+table+"&idValue="+idValue, true);


    _objetus.onreadystatechange = function(){
        if (_objetus.readyState==4)
        {
            //alert(_objetus.responseText);
            if(_objetus.responseText != ""){
                cmbOptions = _objetus.responseText.split("|");
                
                cmbObj.options[j] = new Option("Seleccionar...", "");
                j = 1;

                for(i=0; i < cmbOptions.length; i+=2){
                    cmbObj.options[j] = new Option(cmbOptions[i], cmbOptions[i+1]);
                    j++;
                }
            } else {
				
                cmbObj.options[0] = new Option("No se encontraron productos","0");
            }
			
            cmbObj.disabled = false;
			
            return true;
        }
        else{
            return null;
        }
    }
	
    _objetus.send(null);
}

function getPromoPrecios()
{
	var precio = Number(browserType("precio1").value);
	
	for(var i=1;i<=Promos;i++)
	{
		value = (precio + (precio*browserType('porcentaje_promo'+i).value)/100);
		
		browserType('precio_promo'+i).innerHTML = "$ " + value;
	}
	
    /*
	
    var promo1desc = browserType('promo1desc').value;
    var promo1cuotas = browserType('promo1cuotas').value;
    var promo2desc = browserType('promo2desc').value;
    var promo2cuotas = browserType('promo2cuotas').value;
    var precio_promo1 = "";
    var precio_promo2 = "";
	
    if(precio>0)
    {
        precio_promo1 = (promo1cuotas>0 ? ((precio - ( precio * promo1desc /100 )) / promo1cuotas) : 0).toFixed(2);
        precio_promo2 = (promo2cuotas>0 ? ((precio - ( precio * promo2desc /100 )) / promo2cuotas) : 0).toFixed(2);
    }
    else
    {
        precio_promo1 = "0.00";
        precio_promo2 = "0.00";
    }
	
    browserType('promo1').value = precio_promo1;
    browserType('promo2').value = precio_promo2;
	
    browserType('precio_promo1').innerHTML = precio_promo1 + " $";
    browserType('precio_promo2').innerHTML = precio_promo2 + " $";*/
}

// CARGA LOS DATOS DE UN PRODUCTO ESPECIFICO
function loadProductData(idProducto){
    var aStrings;
	
    _objetus=init();
    _objetus.open("POST", "../functions.php?action=GetProductoData&idProducto="+idProducto, true);
	
    _objetus.onreadystatechange = function(){
        if (_objetus.readyState==4)
        {
            //alert(_objetus.responseText);
            if(_objetus.responseText != ""){
				
                aStrings = _objetus.responseText.split("|");
				
                browserType('code').value 			= aStrings[11];
                browserType('nombre').value 			= aStrings[0];
                browserType('copete').value 			= aStrings[1];
                browserType('descripcion').value 		= aStrings[2];
                browserType('precio1').value 			= aStrings[3];
                browserType('moneda1').selectedIndex 	= (aStrings[4] != "U$S" ? 0 : 1);
                browserType('precio2').value 			= aStrings[5];
                browserType('moneda2').selectedIndex 	= (aStrings[6] != "U$S" ? 0 : 1);
                //browserType('rating').selectedIndex 	= (aStrings[7] - 1);
                browserType('posicion').value 			= aStrings[8];
                browserType('new').checked 				= (aStrings[9] == "1" ? true : false);
                browserType('active').checked 			= (aStrings[10] == "1" ? true : false);
	
            } else {
				
                alert('No se ha podido encontrar informacion acerca del producto seleccionado');
            }
			
            browserType('tablaProducto').style.display = '';
            return true;
        }
        else{
            return null;
        }
    }
	
    _objetus.send(null);
}

// REESTABLECEDOR DE TABLA PRODUCTOS
function resetForm(){
    browserType('producto').value 			= "";
	
    browserType('code').value 			= "";
    browserType('nombre').value 			= "";
    browserType('copete').value 			= "";
    browserType('descripcion').value 		= "";
    browserType('precio1').value 			= "";
    browserType('moneda1').selectedIndex 	= 0;
    browserType('precio2').value 			= "";
    browserType('moneda2').selectedIndex 	= 0;
    //browserType('rating').selectedIndex 	= 0;
    browserType('posicion').value 			= "";
    browserType('new').checked 				= false;
    browserType('active').checked 			= true;
	browserType('action').value 			= "nuevo";
	browserType('subcat_assoc').length	 	= 0;
	browserType('subcat_assoc_added').value = "";
	browserType('assign_categoria').selectedIndex = 0;
	browserType('assign_subcategoria').selectedIndex = 0;
	
	//alert(Promos.length);
	for(var i=1;i<=Promos;i++)
	{
		browserType('precio_promo'+i).innerHTML = "$ 0.00";
	}
}


// DETECTOR DE TECLAS
function isNumberKey(evt)
/* Function que no permite ingresar caracteres que no sean numericos */
{
		
    var charCode = (evt.which) ? evt.which : event.keyCode
    if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
        return false;

      
    return true;
}

function loadCombo(strCombo, urlLink){
    var cmbObj = "";
    var cmbOptions = new Array();
    var j = 0;
	
    cmbObj = browserType(strCombo);
		
    cmbObj.length = 0;
    cmbObj.options[0] = new Option("Cargando...", "");
    cmbObj.disabled = true;
	
    _objetus=init();
    _objetus.open("POST", urlLink, true);

    _objetus.onreadystatechange = function(){
        if (_objetus.readyState==4)
        {
            if(_objetus.responseText != ""){
                cmbOptions = _objetus.responseText.split("|");
                for(i=0; i < cmbOptions.length; i+=2){
                    cmbObj.options[j] = new Option(cmbOptions[i], cmbOptions[i+1]);
                    j++;
                }
            }
			
            cmbObj.disabled = false;
			
            return true;
        }
        else{
            return null;
        }
    }
	
    _objetus.send(null);
}
