function clearList(list) {
    var i = 0;
    var o = list.options;

    for (i = o.length; i >= 0; --i)
		o[i] = null;
    list.disabled = true;
}


function addElement(list, text_in, value_in) {
    var o = list.options;
    var nIdx;
    if (o.length < 0) //IE for Mac 4.5 sets length to -1 if list is empty
        nIdx = 0;
    else
        nIdx = o.length;
		
    o[nIdx] = new Option(text_in, value_in);
    list.disabled = false;
}


function addElementAtPos(list, pos, text_in, value_in) {
    var o = list.options;
    var nIdx = 0;

    if ((pos < 0) || (pos > o.length))
        return;

    addElement(list, '', '');
    for (nIdx = o.length - 1; nIdx > pos; nIdx--) {
        o[nIdx].text = o[nIdx - 1].text;
        o[nIdx].value = o[nIdx - 1].value;
    }
    o[pos] = new Option(text_in, value_in);
    list.disabled = false;
}


function setDefaultByText(list, text_in) {
    with (list) {
        for (var i = 0; i < (options.length); i++) {
             if (options[i].text == text_in) {
                 selectedIndex = i;
                 return;
             }
         }
    }
}


function setDefaultByValue(list, value_in){
    with (list) {
        for (var i = 0; i < (options.length); i++) {
             if (options[i].value == value_in) {
                 selectedIndex = i;
                 return;
             }
         }
    }
}


function startup(parent, make, model) {

    clearList(parent.make);  
    addElement(parent.make, make, '');

    for (var i = 0; i < mn.length; i++)
        if (mn[i]) {
            addElement(parent.make, mn[i], mn[i]);
        }

    if (make) {
        setDefaultByText(parent.make, make);

    } else {
        parent.make.selectedIndex = 0;
        showModel(parent, model);
    }
}


function showModel(parent, model) {

    var models = ma[parent.make.options[parent.make.selectedIndex].value];

    clearList(parent.model);
    addElement(parent.model, model, '');
    if(models) {
        var sModels = models.split('|');
        for (var i = 0; i < sModels.length; i++) {
            if (sModels[i]) { 
                  addElement(parent.model, sModels[i], sModels[i]);
            }
        }
        parent.model.disabled = false;
    } else {
        parent.model.disabled = true;
    }

    parent.model.selectedIndex = 0;
} 

var mn = new Array();
var ma = new Array();