
/*
REM JavaScript functions for Make/Model selector specific to Cars.com ("YMM Lite")
REM Stripped out bNew, and buse_short_name as it is not necessary in this usage
REM Works on both NetScape (4.0+) and IE (4.0+).
*/
function mmInitializeCars(parent, make, model, make_caption, model_caption)

{
    clearList(parent.make);

    addElement(parent.make, make_caption, 0);

    for (var i = 0; i < mmMkCars.length; i++)
    {
        if (mmMkCars[i])
        {
            addElement(parent.make, mmMkCars[i], mmMkCars[i]);
		}
	}


	if (make)
    {
        setDefaultByIText(parent.make, make);
    }
    else
    {
        parent.make.selectedIndex = 0;
    }

}

function mmChangeMakeCars(parent, model_caption)
{
    if (parent.cpo && (parent.cpo.type == "checkbox"))
		parent.cpo.checked = (parent.cpo.checked & !(parent.cpo.disabled = !mmCPO[parent.make.options[parent.make.selectedIndex].value]));

    var ModelList = mmMdCars[parent.make.options[parent.make.selectedIndex].value];

    clearList(parent.model);
    addElement(parent.model, model_caption, -1);
    if(ModelList)
    {
        var rgModels = ModelList.split(',');
        for (var i = 0; i < rgModels.length; i++)
        {
            var sName, sValue;
            // rgModels[i] may be a singular value of ModelAscii, or a "#" delimited string of ModelID and ModelAscii
			if (rgModels[i].indexOf('#') != -1)
			{
				var rgModel = rgModels[i].split('#');
				// Bug #13866:  No need for the model ID in CPO search.  Just use model name.
				sName = sValue = rgModel[1];
			}
			else
				sName = sValue = rgModels[i];
            if (rgModels[i])
            {
                addElement(parent.model, sName, sValue);
            }
        }
        parent.model.disabled = false;
    }
    else
        parent.model.disabled = true;

    parent.model.selectedIndex = 0;
}