﻿// JScript File
var yearSelectedID = "0";
var categorySelectedID = "1";
var makeSelectedID = "0";
var modelSelectedID = "0";
var makeSelected = "0";
var modelSelected = "0";
var styleSelectedID = "0";
var isMake = true;

function GetServerDDLData(ddlYear, ddlMake, ddlModel, ddlStyle, txtDllControl, type)
    {
       var selectedValue = "";
       
       if (type == "submit")  
       {
            var zip = getZipControl(txtDllControl);
            selectedValue = zip.value;
       }
       if (type == "category")  
       {
            categorySelectedID = txtDllControl.options[txtDllControl.selectedIndex].value;;
       }
       if (typeof(ddlYear) == "string")
            ddlYear = getDDLControl(ddlYear);
       yearSelectedID = ddlYear.options[ddlYear.selectedIndex].value;
       if (yearSelectedID.length > 4)
          yearSelectedID = yearSelectedID.substring(0, 4);  
       if (typeof(ddlMake) == "string")
            ddlMake = getDDLControl(ddlMake);
       if (ddlMake != null) {
            makeSelectedID = ddlMake.options[ddlMake.selectedIndex].value;
            makeSelected = ddlMake.options[ddlMake.selectedIndex].innerText;
       }
       if (typeof(ddlModel) == "string")
            ddlModel = getDDLControl(ddlModel);
       if (ddlModel != null) {
            if (ddlModel.selectedIndex >= 0) {
                modelSelectedID = ddlModel.options[ddlModel.selectedIndex].value;
                modelSelected = ddlModel.options[ddlModel.selectedIndex].innerText;
            }
       }
       if (typeof(ddlStyle) == "string")
            ddlStyle = getDDLControl(ddlStyle);
       if (ddlStyle != null) {
            if (ddlStyle.selectedIndex >= 0) 
                styleSelectedID = ddlStyle.options[ddlStyle.selectedIndex].value;
       } 
       
       if (document.getElementById("validMake") != null)
            document.getElementById("validMake").style.display = "none";
       if (document.getElementById("validModel") != null)
            document.getElementById("validModel").style.display = "none";
       
       document.getElementById("c").value = categorySelectedID;
  
       switch (type)
       {
            case "year":
                isMake = true;
                FillDropDownList("year|" + yearSelectedID + "|" + makeSelectedID, "" );
                break;
            case "category":
                isMake = true;
                FillDropDownList("category|" + yearSelectedID + "|" + makeSelectedID + "|" + modelSelectedID + "|" + categorySelectedID );
                break;
            case "make":
                isMake = true;
                clearDDL(ddlModel);
                clearDDL(ddlStyle);
                FillDropDownList("model|" + yearSelectedID + "|" + makeSelectedID, "" );
                break;
           case "model":
                FillDropDownList("style|" + yearSelectedID + "|" + makeSelectedID + "|" + modelSelectedID, "" );
                break;
           case "submit":
                selectedValue = yearSelectedID + "|" + makeSelectedID + "|" + modelSelectedID + "|" + selectedValue;
                FillDropDownList("submit|" + selectedValue, "");
       }
    }

    
function ReceiveDDLServerData(rValue)
    {  
        var twoDDL = rValue.split("~");
        var newItems = twoDDL[0].split("|");
        var item;
        var isValid = true;
        if (newItems[0] == "submit") 
        { 
            for (intI = 1; intI < newItems.length; intI++)
            {
                item = newItems[intI].split("^");
                if (item[1] != "") {
                    switch (item[0]) 
                    {
                        case "zip":
                            document.getElementById("validZip").style.display = "inline";
                            isValid = false;
                            break;
                        case "make":
                            document.getElementById("validMake").style.display = "inline";
                            isValid = false;
                            break;
                        case "model":
                            document.getElementById("validModel").style.display = "inline";
                            isValid = false;
                            break;
                    }
                }
            }
            
       }
       else
       {
            isValid = false;
            createDDL(newItems, makeSelected)
            if (twoDDL.length > 1) {
                // create ddlModels
                newItems = twoDDL[1].split("|");
                createDDL(newItems, modelSelected)
            }
                
        }
        if (isValid) {
            document.getElementById("hdnFormValid").value = "0";
            redirect(); 
        }
        else
            document.getElementById("hdnFormValid").value = "1";
    }
    
function clearDDL(ddl) 
{
    if (ddl != null) {
        for (var i = ddl.options.length; i > 0; i--)
        {
            ddl.options[i] = null;
        } 
    }   
}

function getDDLControl (ddlID) 
{
    
    var ddls = document.getElementsByTagName("select");
    var ddl = null;
    
    for (var i = 0; i < ddls.length; i++) 
    {
        var curddlId = ddls[i].id;
        if (curddlId.indexOf(ddlID) >= 0){
            ddl = document.getElementById(curddlId);
            break;
        }    
    }
    return ddl;
}

function getZipControl (textBxID) 
{
    
    var textBxs = document.getElementsByTagName("input");
    var textBx = null;
    
    for (var i = 0; i < textBxs.length; i++) 
    {
        var curId = textBxs[i].id;
        if (curId.indexOf(textBxID) > 0){
            textBx = document.getElementById(curId);
            break;
        }    
    }
    return textBx;
}

function createDDL(newItems, selectedValue) {

    var itemsCount = newItems.length;
    var ddlID = newItems[itemsCount - 1];
    var ddl;

    ddl = getDDLControl(ddlID);
    clearDDL(ddl);
        
    for (var i = 0; i <= itemsCount - 2; i++)
    {
        var option = document.createElement("OPTION");
        if (newItems[i].length!=0)
        {
            var newItem = newItems[i].split("^");
            option.value = newItem[0];
            option.innerHTML = newItem[1];
            if (selectedValue == option.innerHTML)
                option.selected = true;
            ddl.appendChild(option);
        }    
    }
    if (ddl != null) 
    {
        if (ddl.selectedIndex == -1)
            ddl.option[ddl.selectedIndex].value = "0";
    }
}

function submitCompareStyle(frm, objDDL) 
{
    if (objDDL != null){
        var category = frm.c.value;
        if (category == "")
            category = "1";
        var sUrl = document.getElementById("nextPageUrl").value;
        var style = objDDL.options[objDDL.selectedIndex].value;
        var year = ddlYear.options[ddlYear.selectedIndex].value;
        var make = ddlMake.options[ddlMake.selectedIndex].value;
        var model = ddlModel.options[ddlModel.selectedIndex].value;
        var newUrl =  sUrl + "&y=" + year + "&m=" + make + "&d=" + model + "&c=" + category + "&s=" + style; 
        frm.y.value= year;
        frm.m.value= make;
        frm.d.value= model;
        frm.s.value=style;
        frm.c.value=category;
        location.href = newUrl;
    }
}

function addspaces(znnewcar, znusedcar) 
{
    var tblsNewMC = znnewcar.getElementsByTagName("Table");
    var tblsUsedMC = znusedcar.getElementsByTagName("Table");
    
    insertSpaces(tblsNewMC);
    insertSpaces(tblsUsedMC);
}

function insertSpaces(tblItems) 
{
    var rows = null;
    for (var i = 0; i < tblItems.length; i++)
    {
        tblId = tblItems[i].id;
        if (tblId.indexOf("tblItems") >= 0)
        {
            tblItem = tblItems[i];
            rows = tblItem.getElementsByTagName("tr");
            break;
        }
    }
     
    var nrows = rows.length; 
    for (var i = 0; i < nrows; i++)
    {
        rows[i].lastChild
        var t = rows[i].lastChild;
        t.innerHTML = t.innerHTML + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
        rows[i].lastChild.innerHTML = t.innerHTML;
    } 
     
}

function submitForm() {
    document.getElementById("hdnFormValid").value == "1";
    GetServerDDLData('ddlYears', 'ddlMakes', 'ddlModels', null, 'txtZipCodeDFQ', 'submit');
    isValid = setTimeout("wait()",2000);
    
}

function wait() {
    if (document.getElementById("hdnFormValid").value == "0") 
        return true;
    else
        return false;
}

