﻿function homePageValidation(frm,buttonId,txtFromCity,ddlFromState,lblFromOR,txtFromZip,txtFromDate,txtToCity,ddlToState,lblToOR,txtToZip,txtToDate,valSum,chkPack,chkLoad,chkUnload)
{
    trackWebAnalyticEvent(1001,'True');
    var blnValidation = validateHome(txtFromCity,ddlFromState,txtFromZip,txtFromDate,txtToCity,ddlToState,txtToZip,txtToDate,valSum,chkPack,chkLoad,chkUnload);
    if (blnValidation)
    {
        if(cityCodingValidation(frm,buttonId,txtFromCity,ddlFromState,lblFromOR,txtFromZip,txtFromDate,txtToCity,ddlToState,lblToOR,txtToZip,txtToDate,valSum,true,true))
        {
            return true;
        }
    }
    return false;
}
function validateHome(txtFromCity,ddlFromState,txtFromZip,txtFromDate,txtToCity,ddlToState,txtToZip,txtToDate,valSum,chkPack,chkLoad,chkUnload)
{
    var origEntered;
    var destEntered;
    var blnValid;
    blnValid = true;
    valSum.innerHTML = "";
    valSum.style.paddingLeft = "15px";
    valSum.style.paddingRight = "10px";
    txtFromCity.parentNode.className = "regularField";
    ddlFromState.parentNode.className = "regularField";
    txtFromZip.parentNode.className = "regularField";
    txtToCity.parentNode.className = "regularField";
    ddlToState.parentNode.className = "regularField";
    txtToZip.parentNode.className = "regularField";
    chkPack.parentNode.parentNode.className = "regularField";
    chkLoad.parentNode.parentNode.className = "regularField";
    chkUnload.parentNode.parentNode.className = "regularField";
    origEntered = false;
    destEntered = false;
    if (txtFromZip.value.length > 0 || txtFromCity.value.length > 0 || ddlFromState.value.length > 0)
    {
        origEntered = true;
        if (txtToZip.value.length > 0)
        {
            trackWebAnalyticEvent(1002,txtFromZip.value);
        }
        else
        {
            trackWebAnalyticEvent(1002,txtFromCity.value & ', ' & ddlFromState.value);
        }
    }
    if (txtToZip.value.length > 0 || txtToCity.value.length > 0 || ddlToState.value.length > 0)
    {
        destEntered = true;
        if (txtToZip.value.length > 0)
        {
            trackWebAnalyticEvent(1003,'True');
        }
        else
        {
            trackWebAnalyticEvent(1003,txtToCity.value & ', ' & ddlToState.value);
        }
    }
    if (!origEntered && !destEntered)
    {
        addValidationSummaryItem("Please enter a valid MOVING FROM city/state or MOVING TO city/state!",valSum);
        highlightField(txtFromZip);
        highlightField(txtFromCity);
        highlightField(ddlFromState);
        highlightField(txtToZip);
        highlightField(txtToCity);
        highlightField(ddlToState);
        blnValid = false;
    }
    if (origEntered)
    {
        if ((txtFromZip.value.length != 5) && txtFromCity.value == '' && ddlFromState.value == '')
        {
            addValidationSummaryItem("Please enter a valid MOVING FROM Zip Code Or City and State!",valSum);
            highlightField(txtFromZip);
            highlightField(txtFromCity);
            highlightField(ddlFromState);
            blnValid = false;
        }
        else
        {
            if ((txtFromCity.value > '' && ddlFromState.value == '') || (txtFromCity.value == '' && ddlFromState.value > ''))
            {
                addValidationSummaryItem("Please enter a MOVING FROM City and State!",valSum);
                highlightField(txtFromCity);
                highlightField(ddlFromState);
                blnValid = false;
            }
        }
        if (!isDate(txtFromDate.value))
        {
            addValidationSummaryItem("Please select a valid MOVING FROM date!",valSum);
            highlightField(txtFromDate);
            blnValid = false;
        }
        if (!chkPack.checked && !chkLoad.checked)
        {
            chkLoad.checked = true;
        }
    }
    else
    {
        if(chkPack.checked || chkLoad.checked)
        {
            addValidationSummaryItem("Your service selection requires a MOVING FROM location!",valSum);
            highlightField(txtFromZip);
            highlightField(txtFromCity);
            highlightField(ddlFromState);
            blnValid = false;
        }
    }
    if (destEntered)
    {
        if (txtToZip.value.length != 5 && txtToCity.value == '' && ddlToState.value == '')
        {
            addValidationSummaryItem("Please enter a valid MOVING TO Zip Code or City and State!",valSum);
            highlightField(txtToZip);
            highlightField(txtToCity);
            highlightField(ddlToState);
            blnValid = false;
        }
        else
        {
            if ((txtToCity.value > '' && ddlToState.value == '') || (txtToCity.value == '' && ddlToState.value > ''))
            {
                addValidationSummaryItem("Please enter a MOVING TO City and State!",valSum);
                highlightField(txtToCity);
                highlightField(ddlToState);
                blnValid = false;
            }
        }
        if (!isDate(txtToDate.value))
        {
            addValidationSummaryItem("Please select a valid MOVING TO date!",valSum);
            highlightField(txtToDate);
            blnValid = false;
        }
        if (!chkUnload.checked)
        {
            chkUnload.checked = true;
        }
    }
    else
    {
        if(chkUnload.checked)
        {
            addValidationSummaryItem("Your selection of the UnLoad service requires a MOVING TO location!",valSum);
            highlightField(txtToZip);
            highlightField(txtToCity);
            highlightField(ddlToState);
            blnValid = false;
        }
    }
    if (origEntered && destEntered)
    {
        if(txtFromDate.value > txtToDate.value)
        {
            addValidationSummaryItem("Your MOVING FROM date cannot be greater than your MOVING TO date!",valSum);
            highlightField(txtFromDate);
            highlightField(txtToDate);
            blnValid = false;
        }
    }
    if (!chkPack.checked && !chkLoad.checked && !chkUnload.checked)
    {
        addValidationSummaryItem("Please select atleast one service!",valSum);
        highlightField(chkPack.parentNode);
        highlightField(chkLoad.parentNode);
        highlightField(chkUnload.parentNode);
        blnValid = false;
    }
    if (blnValid)
    {   
        return true;
    }
    else
    {
        return false;
    }
}
function toggleABFResponses(field,value)
{
    var label = document.getElementById(GetClientId("lblABFQuantity"));
    var tb = document.getElementById(GetClientId("txtABFQuantity"));
    tb.style.visibility = 'visible';
    tb.style.visibility = 'visible';
    if (value == 'R')
    {
        label.innerHTML = '*How many ReloCubes?';
    }
    else
    {
        label.innerHTML = '*How many linear feet?';
    }
}
function toggleDefaultResponses(field,value)
{
    var label = document.getElementById(GetClientId("lblShipmentSize"));
    var tb = document.getElementById(GetClientId("txtShipmentSize"));
    tb.style.visibility = 'visible';
    tb.style.visibility = 'visible';
    switch(value)
    {
        case 'C':
            label.innerHTML = 'How many Containers?';
            break;
        case 'T':
            label.innerHTML = 'How many linear feet?';
            break;
        default:
            label.innerHTML = 'What size Rental Truck?';
            break;
    }
}