﻿var cmodel;
var cmake;
var cbody;
var dbtable;
var vtype1;

function changeVtype(vtype) {
    vtype1 = vtype;
    if (vtype1 == "new") {
        if (document.getElementById("mileage")) {
            document.getElementById("mileage").disabled = true;
        }
    }
    else {
        if (document.getElementById("mileage")) {
            document.getElementById("mileage").disabled = false;
        }
    }
    clearList(document.getElementById("body"));
    clearList(document.getElementById("make"));
    clearList(document.getElementById("model"));
    addElement(document.getElementById("body"), '- Loading Body Style -', '');
    addElement(document.getElementById("make"), '- Loading Make -', '');
    addElement(document.getElementById("model"), '- Model -', '');
    //document.getElementById("make").disabled = true;
    //document.getElementById("model").disabled = true;
    getmakemodel(vtype1, "body", '', '', '');
}

function changeBody() {
    clearList(document.getElementById("make"));
    addElement(document.getElementById("make"), '- Loading Make -', '')
    document.getElementById("make").disabled = true;
    clearList(document.getElementById("model"));
    addElement(document.getElementById("model"), '- Model -', '');
    document.getElementById("model").disabled = true;
    //getmakemodel(document.getElementById("vtype").value, "make", document.getElementById("body").value, '');
    getmakemodel(vtype1, "make", document.getElementById("body").value, '');
}

function changeMake() {
    document.getElementById("model").disabled = true;
    clearList(document.getElementById("model"));
    addElement(document.getElementById("model"), '- Loading Model -', '');
    getmakemodel(vtype1, "model", document.getElementById("body").value, document.getElementById("make").value);
}

function getmakemodel(vtype, r, body, make) {
    var urlstr;
    urlstr = "getmakemodel.aspx?vtype=" + vtype + "&r=" + r + "&make=" + make + "&body=" + body + "&dbtable=" + dbtable;
    xhr = createXHR(xhr);
    if (xhr) {
        try {
            xhr.open("GET", urlstr, true);
            if (r == "body") {
                xhr.onreadystatechange = loadBody;
            }
            if (r == "make") {
                xhr.onreadystatechange = loadMake;
            }
            if (r == "model") {
                xhr.onreadystatechange = loadModel;
            }
            xhr.send(null);
        } catch (e) { }
    }
}

function loadBody() {
    if (xhr.readyState == 4) {
        var bodystr = xhr.responseText;
        clearList(document.getElementById("body"));
        addElement(document.getElementById("body"), '- Body Style -', '')
        var rgBodys = bodystr.split(',');
        for (var i = 0; i < rgBodys.length - 1; i++) {
            if (rgBodys[i]) {
                var rgBodyx = rgBodys[i].split('|');
                var rgBodyID = rgBodyx[0];
                var rgBodyName = rgBodyx[1];
                addElement(document.getElementById("body"), rgBodyName, rgBodyID);
            }
        }
        setDefaultByText(document.getElementById("body"), cbody);
        //if (cbody != '') {
        changeBody();
        //}
    }
    else {
    }
}

function loadMake() {
    if (xhr.readyState == 4) {
        var makestr = xhr.responseText;
        document.getElementById("make").disabled = false;
        clearList(document.getElementById("make"));
        addElement(document.getElementById("make"), '- Make -', '')
        var rgMakes = makestr.split(',');
        for (var i = 0; i < rgMakes.length - 1; i++) {
            if (rgMakes[i]) {
                var rgMake = rgMakes[i];
                addElement(document.getElementById("make"), rgMake, rgMake);
            }
        }
        setDefaultByText(document.getElementById("make"), cmake);
        if(cmake != '') {
            changeMake();
        }
    }
    else {
    }
}

var xhr = null;
function createXHR(xhrObj) {
    if (xhrObj && xhrObj.readyState < 4 && browser.isGecko) {
        xhrObj.abort();
        xhrObj = null;
    }
    if (!xhrObj) {
        if (window.XMLHttpRequest) {
            try {
                xhrObj = new XMLHttpRequest();
            } catch (e) {
                xhrObj = null;
            }
        } else if (window.createRequest) {
            try {
                xhrObj = window.createRequest();
            }
            catch (e) {
                xhrObj = null;
            }
        } else if (window.ActiveXObject) {
            try {
                xhrObj = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    xhrObj = new ActiveXObject("Microsoft.XMLHTTP");
                }
                catch (e) {
                    xhrObj = null;
                }
            }
        }
    }
    return xhrObj;
}

function loadModel() {
    if (xhr.readyState == 4) {
        var modelstr = xhr.responseText;
        document.getElementById("model").disabled = false;
        clearList(document.getElementById("model"));
        addElement(document.getElementById("model"), '- Model -', '')
        var rgModels = modelstr.split(',');
        for (var i = 0; i < rgModels.length - 1; i++) {
            if (rgModels[i]) {
                var rgModel = rgModels[i];
                addElement(document.getElementById("model"), rgModel, rgModel);
            }
        }
        setDefaultByText(document.getElementById("model"), cmodel)
    }
    else {
    }
}

function clearList(list) {
    var i = 0;
    var o = list.options;
    for (i = o.length; i >= 0; --i)
        o[i] = null;
}

function addElement(list, text_in, value_in) {
    var o = list.options;
    var nIdx;
    if (o.length < 0)
        nIdx = 0;
    else
        nIdx = o.length;
    o[nIdx] = new Option(text_in, value_in);
}

function setDefaultByText(list, text_in) {
    var o = list.options;
    for (var i = 0; i < o.length; i++) {
        if (o[i].value == text_in) {
            list.selectedIndex = i;
            return;
        }
    }
}

function selectanycolor() {
    var a = document.form9.color;
    for (i = 1; i < a.length; i++) {
        a[i].checked = 0;
    }
}

function changeMileage(s) {
    if (s == 'n') {
        document.getElementById("mileage").disabled = true;
    }
    else {
        document.getElementById("mileage").disabled = false;
    }
}