var peticion = false;
var  testPasado = false;
try {
    peticion = new XMLHttpRequest();
} catch (trymicrosoft) {
    try {
        peticion = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (othermicrosoft) {
        try {
            peticion = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (failed) {
            peticion = false;
        }
    }
}
if (!peticion)
    alert("AJAX INIT ERROR!");

function trim(cadena) {
    for(i=0; i<cadena.length; ) {
        if(cadena.charAt(i)==" ")
            cadena=cadena.substring(i+1, cadena.length);
        else
            break;
    }
    for(i=cadena.length-1; i>=0; i=cadena.length-1) {
        if(cadena.charAt(i)==" ")
            cadena=cadena.substring(0,i);
        else
            break;
    }

    return cadena;
}

function validInt(valor){
    valor = parseInt(valor)
    if (isNaN(valor)) {
        return false;
    }else{
        return valor
    }
}

function addToCart(prod, qty_box) {
    var url = 'includes/ajxAddItem.php';
    var place =  document.getElementById('shoppingCart');
    if ( qty_box == 0 ) {
        var fragment_url = url + '?prod=' + prod + '&qty=1&stock=1';
    } else {
        var qty =  document.getElementById('qtybox_' + qty_box);
        if ( qty.value != 0 ) {
            var fragment_url = url + '?prod=' + prod + '&qty=' + qty.value + '&stock=0';
            qty.value=0;
        } else {
            alert("Invalid Quantity!");
            return;
        }
    }
    fragment_url = fragment_url + "&ms=" + new Date().getTime();
    place.innerHTML = '<img src="images/ajaxloading2.gif" />';
    peticion.open("GET", fragment_url);
    peticion.onreadystatechange = function() {
        if (peticion.readyState == 4) {
            place.innerHTML = peticion.responseText;
        }
    }
    peticion.send(null);
}

function addProductToCart(prod) {
    var url = 'includes/ajxAddItem.php';
    var place =  document.getElementById('shoppingCart');

    var fragment_url = url + '?prod=' + prod + '&qty=1&stock=0';

    fragment_url = fragment_url + "&ms=" + new Date().getTime();
    place.innerHTML = '<img src="images/ajaxloading2.gif" />';
    peticion.open("GET", fragment_url);
    peticion.onreadystatechange = function() {
        if (peticion.readyState == 4) {
            place.innerHTML = peticion.responseText;
        }
    }
    peticion.send(null);
}

function addSelUpgrades(){
    var inputs = document.getElementsByTagName("input");
    var selectedUpgrades= '';
    var wasSelected = false;
			
    for(var i = 0; i < inputs.length; i++){
        if(inputs[i].name.indexOf('upgrade_' != -1)){
            if(inputs[i].checked){
                //alert('checked:'+inputs[i].name);
                //alert('checked prod: ' +  inputs[i].name.substring(8,inputs[i].name.length));
                if(inputs[i].name.substring(8,inputs[i].name.length).charAt(0) != 'x'){
                    selectedUpgrades += inputs[i].name.substring(8,inputs[i].name.length) + ',';
                    wasSelected = true;
                }
            }
                        
        }
    }
    if(wasSelected){
        selectedUpgrades = selectedUpgrades.substring(0, selectedUpgrades.length - 1);
        //alert( selectedUpgrades );
        var url = 'includes/ajxAddUpgrades.php';
        var place =  document.getElementById('shoppingCart');
        var fragment_url = url + '?prods=' + selectedUpgrades;

        fragment_url = fragment_url + "&ms=" + new Date().getTime();
        place.innerHTML = '<img src="images/ajaxloading2.gif" />';
        peticion.open("GET", fragment_url);
        peticion.onreadystatechange = function() {
            if (peticion.readyState == 4) {
                place.innerHTML = peticion.responseText;
            }
        }
        peticion.send(null);
    }
}

function upgradeOptionClicked(sender, familyGroup){
    var famArr = familyGroup.split(',');
    var senderState = sender.checked;
    for(var i = 0; i < famArr.length; i++){
        $('upgrade_'+ famArr[i]).checked = false;
    }
    sender.checked = senderState;
    return false;
}



