var xmlHttp;

function showImg(id, num, imgtype) {
    var xmlHttp = GetXmlHttpObject();
	
    if (xmlHttp==null) {
        alert("Browser does not support HTTP Request");
        return;
    }
	
    var url="getimg.php?id=" + id + "&type=" + imgtype + "&sid="+Math.random();
    xmlHttp.onreadystatechange=function()
    {
        if ((xmlHttp.readyState == 4) || (xmlHttp.readyState == "complete")) {
            var elementname = "img" + num;
            document.getElementById(elementname).innerHTML = xmlHttp.responseText;
        }
    }
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
}

function GetXmlHttpObject() {
    var xmlHttp=null;
	
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    } catch (e) {
        //Internet Explorer
        try {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;
}

function addCustom(a) {
    var total = 0.00;
    var main = document.poform;
	
    var fieldname = "customfee" + a;
    var customfee = parseFloat(document.getElementById(fieldname).innerHTML) * main.qty[a].value;
    if ((main.total[a].value != "0.00") && (main.chkCustom[a].checked)) {
        total = main.total[a].value;
        main.total[a].value = CurrencyFormatted(parseFloat(total) + customfee);
    } else if ((main.total[a].value != "0.00") && (!main.chkCustom[a].checked)) {
        total = main.total[a].value
        main.total[a].value = CurrencyFormatted(parseFloat(total) - customfee);
    }
}
function calcDealerTotal(a) {
    var main = document.poform;
    var fieldname = "customfee" + a;
    var prod = main.itemname[a].value.split("|");
    main.price[a].value = CurrencyFormatted(prod[0]);
    if (main.qty[a].value == "") {
        main.total[a].value = "0.00";
    } else {
        if ((!isNaN(prod[0])) && (!isNaN(main.qty[a].value))) {
            var total = 0;
            var warranty = parseFloat(prod[2]) * main.qty[a].value;
            var custom = parseFloat(prod[3]) * main.qty[a].value;
            if (main.chkCustom[a].checked) {
                total = (parseFloat(prod[0] * main.qty[a].value) + warranty + custom);
            } else {
                total = (parseFloat(prod[0] * main.qty[a].value) + warranty);
            }
            total = CurrencyFormatted(total);
            main.total[a].value = total;
            main.price[a].value = CurrencyFormatted(prod[0]);
            document.getElementById(fieldname).innerHTML = CurrencyFormatted(prod[3]);
        } else {
            main.total[a].value = "0.00";
            main.price[a].value = "0.00";
            document.getElementById(fieldname).innerHTML = CurrencyFormatted(0);
        }
    }
}

function getItemname(a) {
    var main = document.poform;
    main.hName[a].value = main.itemname[a].options[main.itemname[a].selectedIndex].text;
//alert(main.hName[a].value);
}

function CurrencyFormatted(amount) {
    var i = parseFloat(amount);
    if(isNaN(i)) {
        i = 0.00;
    }
    var minus = '';
    if(i < 0) {
        minus = '-';
    }
    i = Math.abs(i);
    i = parseInt((i + .005) * 100);
    i = i / 100;
    s = new String(i);
    if(s.indexOf('.') < 0) {
        s += '.00';
    }
    if(s.indexOf('.') == (s.length - 2)) {
        s += '0';
    }
    s = minus + s;
    return s;
}

function validateStep1(a) {
    var valid = false;
    for (var x = 0; x < a.total.length; x++) {
        if (a.total[x].value != "0.00") {
            valid = true;
        }
    }
	
    if (!valid) {
        alert("Please select a product.");
    } else {
        a.submit();
    }
}

function validateStep2(a) {
    var msg = "";
    if (a.company.value == "") {
        msg += "Please enter a Company Name.\n";
    }
	
    if (a.firstname.value == "") {
        msg += "Please enter a First Name.\n";
    }
	
    if (a.lastname.value == "") {
        msg += "Please enter a Last Name.\n";
    }
	
    if (a.address1.value == "") {
        msg += "Please enter an Address.\n";
    }
	
    if (a.city.value == "") {
        msg += "Please enter a City.\n";
    }
	
    if (a.state.value == "") {
        msg += "Please select a State.\n";
    }
	
    if (a.zip.value == "") {
        msg += "Please enter a Zip Code.\n";
    }
	
    if (a.phone.value == "") {
        msg += "Please enter a Phone number.\n";
    }
	
    if (a.email.value == "") {
        msg += "Please enter an eMail Address.\n";
    }
	
    if (msg.length > 0) {
        alert(msg);
    } else {
        a.submit();
    }
}

function validateStep3(a) {
    var chosen = 0;
    for (var x = 0; x < a.useaddress.length; x++) {
        if (a.useaddress[x].checked) {
            chosen = a.useaddress[x].value;
        }
    }
	
    a.submit();
}

function validateStep4(a) {
    var msg = "";
    if (a.shippingCosts.value == "0|0") {
        msg += "Please select a shipping method.";
    }
	
    if (msg.length > 0) {
        alert(msg);
    } else {
        a.submit();
    }
}

function submitNext(step, a) {
    switch (step) {
        case 1:
            validateStep1(a);
            break;
        case 2:
            validateStep2(a);
            break;
        case 3:
            validateStep3(a);
            break;
        case 4:
            //validateStep4(a);
            a.submit();
            break;
    }
}

function updateShipping() {
    document.poform.btnSubmit.value = "shipping";
    document.poform.submit();
}
function number_format(number, decimals, dec_point, thousands_sep) {
    number = (number+'').replace(',', '').replace(' ', '');
    var n = !isFinite(+number) ? 0 : +number,
    prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
    sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,        dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
    s = '',
    toFixedFix = function (n, prec) {
        var k = Math.pow(10, prec);
        return '' + Math.round(n * k) / k;
    };
    // Fix for IE parseFloat(0.55).toFixed(0) = 0;
    s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
    if (s[0].length > 3) {
        s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
    }
    if ((s[1] || '').length < prec) {
        s[1] = s[1] || '';
        s[1] += new Array(prec - s[1].length + 1).join('0');
    }
    return s.join(dec);
}
