/*
// MDA 11/15/2008 - #91148 Fixed js error on resume tab initial load
'	JW - 12/19/2008 - 73671 - Enhanced to function for Analyzer geog selections
'   YS - 12/23/2008 - 93277 - Fixed function getAreasByAreatype
'	JW - 03/26/2009 - 97777 - Added Nearby CT and MA for emp search
'   SR - 07/17/2009 - Updated to support multiple states for county, msa and regions.
'   JW - 11/09/2009 - 115829 - Updated multi-state support for ANA page call in getAreasByAreatype()
'	JW - 03/31/2010 - 126909 - Added ctrlAppSource to getAreasByAreatype(). Not sure if this will cause other issues.
'    LB - 04/08/2010 - #127715 Modified function getAreasByAreatype() - If there isn't a recordset then disable the dropdown control
'	JW - 04/13/2010 - 128033 - Updated setArea() to toggleOff the loadingDiv and enable the submit button
'   SR - 04/20/2010 - #128818 - Changed the way control renders itself
'	JW - 06/29/2010 - 134231 - Removed check for ctlAppSource around "Fix to get all states available" in getAreasByAreatype()
'   SR - 07/15/2010 - 135565 - Fixed issues reported in OPC pertaining to MAXIMUS project
'  JDM - 07/15/2010 - #135811 - changed alert text for zip code
'   MKS  07/29/2010  #136837 - Hide state selection for custom regions.
'   KP - 07/27/2010 - #142536 - added code to put focus on keyword field if specific area isn't set
'   TN   10/08/2010 #144683 Fixed function setSelectedArea
'   NRP  03/17/2011 #156401 updated hasAreaBeenSelected and setZipcode, donot perform search if zip code is invalid.
*/


var ctrlState; var ctrlStateSelected;
var ctrlAreatype; var ctrlAreatypeSelected;
var ctrlArea; var ctrlAreaSelected;
var ctrlZip; var ctrlCity; var ctrlRadius;
var ctrlDWL;
var dirlevel = "";
var ctrlAppSource;
var ctrlStfips; var ctrlSelectedStfips;
var ctrlCountry;

function initGlobals() {
    if (document.forms[0].ff_state) { ctrlState = document.forms[0].ff_state; }
    if (document.forms[0].ff_state_selected) { ctrlStateSelected = document.forms[0].ff_state_selected; }
    if (document.forms[0].ff_areatype) { ctrlAreatype = document.forms[0].ff_areatype; }
    if (document.forms[0].ff_areatype_selected) { ctrlAreatypeSelected = document.forms[0].ff_areatype_selected; }
    if (document.forms[0].ff_area) { ctrlArea = document.forms[0].ff_area; }
    if (document.forms[0].ff_area_selected) { ctrlAreaSelected = document.forms[0].ff_area_selected; }
    if (document.forms[0].ff_zip) { ctrlZip = document.forms[0].ff_zip; }
    if (document.forms[0].ff_city) { ctrlCity = document.forms[0].ff_city; }
    if (document.forms[0].ff_zip_radius) { ctrlRadius = document.forms[0].ff_zip_radius; }
    if (document.forms[0].ff_dwl) { ctrlDWL = document.forms[0].ff_dwl; }
    if (document.forms[0].ff_dirlevel) { dirlevel = document.forms[0].ff_dirlevel.value; }
    if (document.forms[0].ff_app_source) { ctrlAppSource = document.forms[0].ff_app_source.value; }
    if (document.forms[0].ff_stfips) { ctrlStfips = document.forms[0].ff_stfips; }
    if (document.forms[0].ff_stfips_selected) { ctrlSelectedStfips = document.forms[0].ff_stfips_selected; }
    if (document.forms[0].ff_country) { ctrlCountry = document.forms[0].ff_country; }

}

function backButtonHandler() {
    var state; var areatype; var area; var lwia;
    var ctrlStateSelected; var ctrlAreatypeSelected; var ctrlAreaSelected;
    var ctrlArea; var ctrlCountry;

    if (document.forms[0].ff_state_selected) { ctrlStateSelected = document.forms[0].ff_state_selected; }
    if (document.forms[0].ff_areatype_selected) { ctrlAreatypeSelected = document.forms[0].ff_areatype_selected; }
    if (document.forms[0].ff_area_selected) { ctrlAreaSelected = document.forms[0].ff_area_selected; }
    if (document.forms[0].ff_area) { ctrlArea = document.forms[0].ff_area; }
    if (document.forms[0].ff_country) { ctrlCountry = document.forms[0].ff_country; }

    if (ctrlStateSelected) {
        var state = ctrlStateSelected.value;
    }
    if (ctrlAreatypeSelected) {
        var areatype = ctrlAreatypeSelected.value;
    }
    if (ctrlAreaSelected) {
        var area = ctrlAreaSelected.value;
    }

    if (areatype && areatype != "") {
        getAreasByAreatype(areatype, false);
        if (areatype == "01") {
            appendOrOutOfState(ctrlArea);
            toggleTableRowOff("state_selection");
        }
        else if (areatype == "00" || areatype == "98") {
            toggleTableRowOff("state_selection");
        }
        else if (areatype != "90" && areatype != "91" && areatype != "92") {
            toggleTableRowOn("state_selection");
        }
    }
}

function updateURLParameters(theform) {
    var newURL = "";
    var queryURL = theform.action;
    var ctrlAreatypeSelected; var ctrlArea; var ctrlCity;
    var ctrlDWL; var ctrlZip; var ctrlRadius;
    var ctrlCountry;

    if (document.forms[0].ff_areatype_selected) { ctrlAreatypeSelected = document.forms[0].ff_areatype_selected; }
    if (document.forms[0].ff_area) { ctrlArea = document.forms[0].ff_area; }
    if (document.forms[0].ff_city) { ctrlCity = document.forms[0].ff_city; }
    if (document.forms[0].ff_dwl) { ctrlDWL = document.forms[0].ff_dwl; }
    if (document.forms[0].ff_zip) { ctrlZip = document.forms[0].ff_zip; }
    if (document.forms[0].ff_zip_radius) { ctrlRadius = document.forms[0].ff_zip_radius; }
    if (document.forms[0].ff_country) { ctrlCountry = document.forms[0].ff_country; }

    if (!ctrlCountry) { toggleLayerOff("spnCountryToAreatypeImg"); }

    if (ctrlAreatypeSelected) {
        if (ctrlAreatypeSelected.value != "90" && ctrlAreatypeSelected.value != "91" && ctrlAreatypeSelected.value != "92") {
            if (ctrlArea.value != "") {
                if (fleegix) {
                    newURL = fleegix.uri.setParam("geo", ctrlArea.value, queryURL)
                    newURL = fleegix.uri.setParam("geotype", "", newURL)
                    newURL = fleegix.uri.setParam("city", "", newURL)
                    newURL = fleegix.uri.setParam("zip", "", newURL)
                    newURL = fleegix.uri.setParam("radius", "", newURL)
                    newURL = fleegix.uri.setParam("radius", "", newURL)
                    if (ctrlCountry) {
                        newURL = fleegix.uri.setParam("country", escape(ctrlCountry.value), newURL);
                    }
                    theform.action = newURL;
                    return true;
                }
            }
            else {
                alert("Please select an area before you continue.");
                ctrlArea.focus();
                return false;
            }
        }
        else {
            if (ctrlAreatypeSelected.value == "92") {
                if (ctrlCity.value != "") {
                    newURL = fleegix.uri.setParam("city", escape(ctrlCity.value), queryURL)
                    newURL = fleegix.uri.setParam("geotype", "city", newURL)
                    newURL = fleegix.uri.setParam("geo", "", newURL)
                    newURL = fleegix.uri.setParam("zip", "", newURL)
                    newURL = fleegix.uri.setParam("radius", "", newURL)
                    if (ctrlCountry) {
                        newURL = fleegix.uri.setParam("country", escape(ctrlCountry.value), newURL);
                    }
                    theform.action = newURL;
                    return true;
                }
                else {
                    alert("Please enter a city name before you continue.");
                    ctrlCity.focus();
                    return false;
                }
            }

            if (ctrlAreatypeSelected.value == "91") {
                if (ctrlDWL.value != "") {
                    newURL = fleegix.uri.setParam("geotype", "dwl", queryURL)
                    newURL = fleegix.uri.setParam("geo", escape(ctrlDWL.value), newURL)
                    newURL = fleegix.uri.setParam("city", "", newURL)
                    newURL = fleegix.uri.setParam("zip", "", newURL)
                    newURL = fleegix.uri.setParam("radius", "", newURL)
                    theform.action = newURL;
                    return true;
                }
            }

            if (ctrlAreatypeSelected.value == "90") {
                if (ctrlZip.value != "") {
                    for (var i = 0; i < ctrlRadius.length; i++) {
                        if (ctrlRadius[i].checked) {
                            var radius = ctrlRadius[i].value;
                        }
                    }
                    newURL = fleegix.uri.setParam("zip", escape(ctrlZip.value), queryURL)
                    newURL = fleegix.uri.setParam("radius", radius, newURL)
                    newURL = fleegix.uri.setParam("geotype", "zip", newURL)
                    newURL = fleegix.uri.setParam("geo", "", newURL)
                    newURL = fleegix.uri.setParam("city", "", newURL)
                    if (ctrlCountry) {
                        newURL = fleegix.uri.setParam("country", escape(ctrlCountry.value), newURL);
                    }
                    theform.action = newURL;
                    return true;
                }
                else {
                    alert("Please enter a valid Zip Code before you continue");
                    ctrlZip.focus();
                    return false;
                }
            }
        }
    }
}

function getAreatypesByCountry(country, async) {

    var OptionString; var OptionValue; var OptionDesc; var newOption; var URL;
    var myArrayOfOptions; var myArrayOfOptionValues;
    var session;

    var ctrlAreatype; var ctrlAreatypeSelected;
    var dirlevel; var ctrlAppSource;


    if (document.forms[0].ff_areatype) { ctrlAreatype = document.forms[0].ff_areatype; }
    if (document.forms[0].ff_areatype_selected) { ctrlAreatypeSelected = document.forms[0].ff_areatype_selected; }
    if (document.forms[0].session) { session = document.forms[0].session.value; }
    if (document.forms[0].ff_dirlevel) { dirlevel = document.forms[0].ff_dirlevel.value; }
    if (document.forms[0].ff_app_source) { ctrlAppSource = document.forms[0].ff_app_source.value; }

    if (!session) {
        session = "" + getQSParameter("session");
    }

    URL = dirlevel + "ajaxserver.asp?action=areatypes_by_country&session=" + escape(session) + "&country=" + escape(country);

    CreateXmlHttp()	// function found in includes/js/ajax.js

    if (XmlHttp) {
        toggleTableBodyOn('area_body');
        toggleTableBodyOff('zip_body');
        toggleTableBodyOff('city_body');
        toggleTableBodyOff('dwl_body');

        if (async) {
            XmlHttp.onreadystatechange = function () {
                if (XmlHttp.readyState == 4) {
                    if (XmlHttp.status == 200) {
                        ctrlAreatype.disabled = false;
                        HandleResponse_select(ctrlAreatype);
                        if (ctrlAreatypeSelected && ctrlAreatypeSelected.value != "") {
                            ctrlAreatype.value = ctrlAreatypeSelected.value;
                        }
                        if (ctrlAreatype) {
                            getAreasByAreatype(ctrlAreatype.value, true);
                            if (ctrlAreatype.length == 1) { ctrlAreatype.disabled = true; }
                        }

                    }
                    else {
                        alert("There was a problem retrieving data from the server.");
                    }
                }
            }
            XmlHttp.open('GET', URL, true) //asynchronous call.
            XmlHttp.send(null)
        }
        else {
            XmlHttp.open('GET', URL, false) //synchronous call.
            XmlHttp.send(null)

            HandleResponse_select(ctrlAreatype);
            if (ctrlAreatypeSelected && ctrlAreatypeSelected.value != "") {
                ctrlAreatype.value = ctrlAreatypeSelected.value;
            }
        }
        ctrlCity.value = "";
        ctrlZip.value = "";
    }
}


// ==============================================================================================================
// History:
// LB 04/07/2010 #127715 If no recordset, disable the control

function getAreasByAreatype(areatype, async) {
    var OptionString; var OptionValue; var OptionDesc; var newOption; var URL;
    var myArrayOfOptions; var myArrayOfOptionValues;
    var state; var session;

    var ctrlStateSelected; var ctrlZip; var ctrlCity;
    var ctrlArea; var ctrlAreaSelected; var dirlevel; var ctrlAppSource;
    var ctrlState; var ctrlCountrySelected;

    if (document.forms[0].ff_state) { ctrlState = document.forms[0].ff_state; }
    if (document.forms[0].ff_state_selected) { ctrlStateSelected = document.forms[0].ff_state_selected; }
    if (document.forms[0].session) { session = document.forms[0].session.value; }
    if (document.forms[0].ff_zip) { ctrlZip = document.forms[0].ff_zip; }
    if (document.forms[0].ff_city) { ctrlCity = document.forms[0].ff_city; }
    if (document.forms[0].ff_area) { ctrlArea = document.forms[0].ff_area; }
    if (document.forms[0].ff_area_selected) { ctrlAreaSelected = document.forms[0].ff_area_selected; }
    if (document.forms[0].ff_dirlevel) { dirlevel = document.forms[0].ff_dirlevel.value; }
    if (document.forms[0].ff_app_source) { ctrlAppSource = document.forms[0].ff_app_source.value; }
    if (document.forms[0].ff_country_selected) { ctrlCountrySelected = document.forms[0].ff_country_selected; }

    if (!session) {
        session = "" + getQSParameter("session");
    }

    if (ctrlStateSelected) {
        state = ctrlStateSelected.value;
    }
    else {
        alert("A state has not been selected.");
        return;
    }

    if (areatype != "90" && areatype != "91" && areatype != "92" && areatype != "93") {
        // Fix to get all states available
        if (areatype == "01") { state = ""; }
        else if (areatype == "00") { state = "US"; }
        else { state = ctrlState.value; }

        if (!ctrlAppSource) { ctrlAppSource = ""; }

        URL = dirlevel + "ajaxserver.asp?action=areas_by_map_areatype" + ctrlAppSource + "&session=" + escape(session)
		+ "&state=" + escape(state)
		+ "&areatype=" + escape(areatype)
		+ "&country=" + escape(ctrlCountrySelected.value);

        CreateXmlHttp()	// function found in includes/js/ajax.js

        if (XmlHttp) {
            toggleTableBodyOn('area_body');
            toggleTableBodyOff('zip_body');
            toggleTableBodyOff('city_body');
            toggleTableBodyOff('dwl_body');

            if (async) {

                XmlHttp.onreadystatechange = function () {
                    if (XmlHttp.readyState == 4) {
                        if (XmlHttp.status == 200) {
                            HandleResponse_select(ctrlArea);
                            /*
                            SR 07/15/2010 # 135565 - Not sure if we need this anymore... commenting for now
                            if (ctrlAreaSelected && ctrlAreaSelected.value != "") {
                            ctrlArea.value = ctrlAreaSelected.value;
                            }
                            */
                            if (areatype == "01") {
                                appendOrOutOfState(ctrlArea);
                                toggleTableRowOff("state_selection");
                                ctrlArea.disabled = false;
                            }
                            else if (areatype == "00" || areatype == "98") {
                                toggleTableRowOff("state_selection");
                            }
                            else if (areatype == "") {
                                toggleTableRowOff("state_selection");
                                ctrlArea.disabled = true;
                            }
                            else if (areatype != "90" && areatype != "91" && areatype != "92" && areatype != "93") {
                                toggleTableRowOn("state_selection");
                                // #127715 If there isn't a recordset then disable the dropdown control
                                if (XmlHttp.responseText.length > 0) {
                                    ctrlArea.disabled = false;
                                }
                                else {
                                    ctrlArea.disabled = true;
                                }
                            }

                            if (ctrlArea.value != "") {
                                setArea();
                            }
                        }
                        else {
                            alert("There was a problem retrieving data from the server.");
                        }
                    }
                }
                XmlHttp.open('GET', URL, true) //asynchronous call.
                XmlHttp.send(null)
            }
            else {
                XmlHttp.open('GET', URL, false) //synchronous call.
                XmlHttp.send(null)

                HandleResponse_select(ctrlArea);
                if (ctrlAreaSelected && ctrlAreaSelected.value != "") {
                    ctrlArea.value = ctrlAreaSelected.value;
                }
            }
            ctrlCity.value = "";
            ctrlZip.value = "";
        }
    }
    else {
        if (areatype == "92") {
            toggleTableBodyOn('city_body');
            toggleTableBodyOff('zip_body');
            toggleTableBodyOff('area_body');
            toggleTableBodyOff('dwl_body');
            ctrlZip.value = "";
            ctrlArea.value = "";
            ctrlAreaSelected.value = "";
            if (getElement("divChooseArea").style.display != "none") { ctrlCity.focus(); }
        }
        if (areatype == "91") {
            toggleTableBodyOn('dwl_body');
            toggleTableBodyOff('zip_body');
            toggleTableBodyOff('area_body');
            toggleTableBodyOff('city_body');
            ctrlZip.value = "";
            ctrlCity.value = "";
            ctrlArea.value = "";
            ctrlAreaSelected.value = "";
        }
        if (areatype == "90" || areatype == "93") {
            toggleTableBodyOn('zip_body');
            toggleTableBodyOff('area_body');
            toggleTableBodyOff('city_body');
            toggleTableBodyOff('dwl_body');
            ctrlCity.value = "";
            ctrlArea.value = "";
            ctrlAreaSelected.value = "";
            if (getElement("divChooseArea").style.display != "none") { ctrlZip.focus(); }
        }

        toggleTableRowOff("state_selection");
    }
}

// ==============================================================================================================

function changeSelectedArea() {
    toggleLayer('divChooseArea');
}

// ==============================================================================================================

function GSIAjaxLSUpdateURLParameters(url, notify) {
    var ctrlAreatypeSelected;
    var ctrlAreaSelected;
    var ctrlZip; var ctrlRadius; var ctrlCountry;
    var ctrlCity;
    var ctrlDWL;
    var newURL = "";

    if (document.forms[0].ff_areatype_selected) { ctrlAreatypeSelected = document.forms[0].ff_areatype_selected; }
    if (document.forms[0].ff_area_selected) { ctrlAreaSelected = document.forms[0].ff_area_selected; }
    if (document.forms[0].ff_zip) { ctrlZip = document.forms[0].ff_zip; }
    if (document.forms[0].ff_city) { ctrlCity = document.forms[0].ff_city; }
    if (document.forms[0].ff_dwl) { ctrlDWL = document.forms[0].ff_dwl; }
    if (document.forms[0].ff_zip_radius) { ctrlRadius = document.forms[0].ff_zip_radius; }
    if (document.forms[0].ff_country) { ctrlCountry = document.forms[0].ff_country; }

    if (ctrlAreatypeSelected) {
        if (ctrlAreatypeSelected.value != "90" && ctrlAreatypeSelected.value != "91" && ctrlAreatypeSelected.value != "92") {
            if (ctrlAreaSelected.value != "") {
                if (fleegix) {
                    newURL = fleegix.uri.setParam("geo", ctrlAreaSelected.value, url);
                    newURL = fleegix.uri.setParam("geotype", "", newURL);
                    newURL = fleegix.uri.setParam("city", "", newURL);
                    newURL = fleegix.uri.setParam("zip", "", newURL);
                    newURL = fleegix.uri.setParam("radius", "", newURL);
                }
            }
            else {
                if (notify) {
                    alert("Please select an area before you continue.");
                }
            }
        }
        else {
            if (ctrlAreatypeSelected.value == "92") {
                if (ctrlCity.value != "") {
                    newURL = fleegix.uri.setParam("city", escape(ctrlCity.value), url);
                    newURL = fleegix.uri.setParam("geotype", "city", newURL);
                    newURL = fleegix.uri.setParam("geo", "", newURL);
                    newURL = fleegix.uri.setParam("zip", "", newURL);
                    newURL = fleegix.uri.setParam("radius", "", newURL);
                }
                else {
                    if (notify) {
                        alert("Please enter a city name before you continue.");
                    }
                }
            }

            if (ctrlAreatypeSelected.value == "91") {
                if (ctrlDWL && ctrlDWL.value != "") {
                    newURL = fleegix.uri.setParam("geotype", "dwl", url);
                    newURL = fleegix.uri.setParam("geo", escape(ctrlDWL.value), newURL);
                    newURL = fleegix.uri.setParam("city", "", newURL);
                    newURL = fleegix.uri.setParam("zip", "", newURL);
                    newURL = fleegix.uri.setParam("radius", "", newURL);
                }
            }

            if (ctrlAreatypeSelected.value == "90") {
                if (ctrlZip.value != "") {
                    for (var i = 0; i < ctrlRadius.length; i++) {
                        if (ctrlRadius[i].checked) {
                            var radius = ctrlRadius[i].value;
                        }
                    }
                    newURL = fleegix.uri.setParam("zip", escape(ctrlZip.value), url);
                    newURL = fleegix.uri.setParam("radius", radius, newURL);
                    newURL = fleegix.uri.setParam("geotype", "zip", newURL);
                    newURL = fleegix.uri.setParam("geo", "", newURL);
                    newURL = fleegix.uri.setParam("city", "", newURL);
                }
                else {
                    if (notify) {
                        alert("Please enter a valid Zip Code before you continue");
                    }
                }
            }
        }
    }
    /*
    if (ctrlCountry) {
    newURL = fleegix.uri.setParam("country", escape(ctrlCountry.value), url);
    }
    */
    return newURL;
}

function processGSIAjaxJSDiv() {
    var oldURL; var newURL;
    var divLinks;
    divLinks = getElement('GSIAjaxLS');

    if (divLinks) {

        var anchors = divLinks.getElementsByTagName("a");

        for (var i = 0; i < anchors.length; i++) {
            var anchor = anchors[i];
            oldURL = '' + anchor.getAttribute("href");
            newURL = '';
            if (oldURL.indexOf('TreeView_PopulateNode') == -1 && oldURL.indexOf('#') == -1 && oldURL.indexOf('javascript:') == -1 && oldURL.indexOf('saintro.asp') == -1) {
                newURL = GSIAjaxLSUpdateURLParameters(oldURL, false);
                if (newURL.length > 0) {
                    anchor.href = newURL;
                }
            }
            //alert('oldURL = ' + oldURL + '\n\n newURL = ' + newURL);
        }
    }
}

function setSelectedArea(pageload) {
    var ctrlSpan; var value = ""; var URL = ""; var newURL = "";
    var aspnetFormURL = document.forms[0].action;
    var ctrlAreaNameSelected;

    if (document.forms[0].ff_areaname_selected) {
        ctrlAreaNameSelected = document.forms[0].ff_areaname_selected;
        {

            ctrlSpan = getElement('spnSelectedArea');

            if (ctrlSpan && ctrlAreaNameSelected && ctrlAreaNameSelected.value != "") {
                ctrlSpan.innerHTML = ctrlAreaNameSelected.value;
            }

            //    if (pageload)
            //    {
            aspnetFormURL = GSIAjaxLSUpdateURLParameters(aspnetFormURL, false);
            if (aspnetFormURL.length > 0) {
                document.forms[0].action = aspnetFormURL;
            }
            if (document.forms[0].ff_form_action) {
                URL = GSIAjaxLSUpdateURLParameters(document.forms[0].ff_form_action.value, false);
                document.forms[0].ff_form_action.value = URL;
            }
            processGSIAjaxJSDiv();

            if (ctrlSpan && ctrlAreaNameSelected && ctrlAreaNameSelected.value != "") {
                toggleLayerOn('divSelectedArea');
                toggleLayerOff('divChooseArea');
            }

            if (document.forms[0].ff_postback_onchange && document.forms[0].ff_postback_onchange.value == "1" && !pageload) {
                if (fleegix) {
                    newURL = document.forms[0].action;
                    newURL = fleegix.uri.setParam("areatype", "", newURL);
                    document.forms[0].action = newURL;
                }
                document.forms[0].submit();
            }

            if (ctrlAreaNameSelected.value != "") { toggleLayerOff("spnSelectedAreaNoLoadedAreaName"); }

            updateJobSearchJQueryOptions();
        }
    }
}

function setSelectedAreaOnLoad() {
    setSelectedArea(true);
}

function setDWLSelectedAreaText() {
    var lnkDWL = getElement('lnkDWL');
    if (lnkDWL) {
        document.forms[0].ff_areaname_selected.value = lnkDWL.innerHTML;
        setSelectedArea(false);
    }
}

function getSelectedRadiusText() {
    // Get the selected list item's value
    var value = "";
    var list = document.forms[0].ff_zip_radius;

    for (var i = 0; i < list.length; i++) {
        if (list[i].checked) {
            value = list[i].value;
        }
    }
    return value;
}

function setZipcode(blnvalidate) {
    var zipcode = document.forms[0].ff_zip.value;

    if (blnvalidate) {
        if (zipcode.length == 5) {
            document.forms[0].ff_areaname_selected.value = getSelectedRadiusText() + ' ' + document.forms[0].ff_lang_mileradiusof.value + ' ' + zipcode;
            setSelectedArea(false);

            return true;
        }
        else {
            alert(document.forms[0].ff_lang_zipcode.value);
            document.forms[0].ff_zip.focus();
            return false;
        }
    }
    else {
        document.forms[0].ff_areaname_selected.value = getSelectedRadiusText() + ' ' + document.forms[0].ff_lang_mileradiusof.value + ' ' + zipcode;
        setSelectedArea(false);
    }

}

function setCity() {
    var city = document.forms[0].ff_city.value;

    if (city.length > 0) {
        document.forms[0].ff_areaname_selected.value = city;
        setSelectedArea(false);
    }
    else {
        alert(document.forms[0].ff_lang_city.value);
    }
}

// ==============================================================================================================

function setDWL() {
    setDWLSelectedAreaText();
    setSelectedArea(false);
}

// ==============================================================================================================
function setArea() {
    var value = document.forms[0].ff_area.value;
    var text = document.forms[0].ff_area.options[document.forms[0].ff_area.selectedIndex].text;

    if (value != "") {
        document.forms[0].ff_area_selected.value = value;
        document.forms[0].ff_areaname_selected.value = text;
        setSelectedArea(false);
    }
    else {

        toggleLayerOff("loadingDIV");
        if (document.forms[0].btnSubmit) {
            document.forms[0].btnSubmit.disabled = false;
        }
        alert(document.forms[0].ff_lang_area.value);
        //put focus on keyword field if specific area isn't set
        if (document.getElementById('keyword')) {
            objkeyword = document.getElementById('keyword');
            if (objkeyword) {
                try {
                    objkeyword.focus();
                }
                catch (err) {
                }
            }
        }

    }
}

// ==============================================================================================================

function appendOrOutOfState(control) {
    var OutOfState = document.forms[0].ff_lang_outofstate.value;

    for (var i = 0; i < control.length; i++) {
        if (control[i].value != "") {
            control[i].text += ' ' + OutOfState;
        }
    }

}

function hasAreaBeenSelected() {
    if (getElement("divChooseArea").style.display == "block") {
        if (document.forms[0].ff_areatype_selected) {
            switch (document.forms[0].ff_areatype_selected.value) {
                case "90":
                    if (!(setZipcode(true))) { return false };
                    break;
                case "91":
                    setDWL();
                    break;
                case "92":
                    setCity();
                    break;
                default:
                    setArea();
                    break;
            }
        }

        if (document.forms[0].ff_areaname_selected && document.forms[0].ff_areaname_selected.value == "") {
            //            alert("hasAreaBeenSelected = false1");
            return false;
        }
        else {
            /*
            if (document.forms[0].ff_area_selected && document.forms[0].ff_area_selected.value == "") {
            //                alert("hasAreaBeenSelected = false2");
            return false;
            }
            else {
            //                alert("hasAreaBeenSelected = true");
            return true;
            }
            */
            return true;
        }
    }
    else {
        return true;
    }
}

function updateJobSearchJQueryOptions() {
    // Determine if any JQuery autocomplete events need to be updated
    if (document.forms[0].ff_suggestionlist_jobtitle && document.forms[0].ff_suggestionlist_jobtitle.value == "1") {

        var extraOptions = JQuery_Autocomplete_Options_JobtitleKeyword();
        var evalstr = '$("#keyword").setOptions(' + extraOptions + ')';
        eval(evalstr);

    }
}

function JQuery_Autocomplete_Options_JobtitleKeyword() {

    // Function determines what geography has been selected so that information
    // can be passed to the autocomplete JQuery call

    var urlAction = "";
    var geo = ""; var stfips = ""; var areatype = ""; var area = "";
    var city = "";
    var zip = ""; var radius = "";

    var jquery_suggestionlist_options = "{ extraParams: {";

    // determine if any other criteria has been specified
    if (isJustAreaAndKeyword()) {
        jquery_suggestionlist_options += "appendTotalToTitle: 1, "
    }
    else {
        jquery_suggestionlist_options += "appendTotalToTitle: 0, "
    }

    if (document.forms[0]) {

        urlAction = document.forms[0].action;
        geo = "" + getQueryVariable("geo", urlAction);
        city = getQueryVariable("city", urlAction);
        zip = getQueryVariable("zip", urlAction);
        radius = getQueryVariable("radius", urlAction);

        if (geo != "") {
            jquery_suggestionlist_options += "geo:'" + geo + "'";
        }
        else if (city != "") {
            jquery_suggestionlist_options += "city:'" + city + "'";
        }
        else if (zip != "") {
            jquery_suggestionlist_options += "zip:'" + escape(zip) + "', ";
            if (radius != "") { jquery_suggestionlist_options += "radius:" + escape(radius); }
        }
        jquery_suggestionlist_options += " }}"


    }
    return jquery_suggestionlist_options;
}

function isJustAreaAndKeyword() {

    var theform = document.frmQuickSearch;
    var result = true;
    var otherCriteria = false;

    if (theform) {
        if (theform.ogrp) {
            if (GetSelList(theform.ogrp) != "ZZ") { result = false; }
        }
        if (theform.ocde) {
            if (theform.ocde.value != "" && theform.ocde.value != "ZZ") { result = false; }
        }
        if (GetSelList(theform.salaryrange) != "") { result = false; }
        if (GetSelList(theform.cboEdulevel) != "") { result = false; }
        if (GetSelList(theform.sitecategory) != "") { result = false; }
        if (GetSelList(theform.cboTimespan) != "") { result = false; }
    }
    return result;
}

/* 

SR 03/18/2011 - For some reason these events would get fired before entire document is loaded causing
an alert message to be displayed instructing the user to select an area before continuing.  Replaced
with jQuery document.ready function

if (window.addEventListener) {
    window.addEventListener("load", initGlobals, false);
    window.addEventListener("load", backButtonHandler, false);
    window.addEventListener("load", setSelectedAreaOnLoad, false);

}
else {
    window.attachEvent("onload", function () { initGlobals(); });
    window.attachEvent("onload", function () { backButtonHandler(); });
    window.attachEvent("onload", function () { setSelectedAreaOnLoad(); });
}

*/

$(document).ready(function () {
    initGlobals();
    backButtonHandler();
    setSelectedAreaOnLoad();
});

