//-----------------------------------------------------------------------------------
function jsPageAction(aintActionId, aintActionValue)
{
    //set action trigger
    var lobjForm = document.forms[0];
    
    lobjForm.elements[jsFindHidden("hdnPageActionId")]. value = aintActionId;
    lobjForm.elements[jsFindHidden("hdnPageActionValue")]. value = aintActionValue;
    
    lobjForm.submit();
}
//-----------------------------------------------------------------------------------
function doAdvancedSearch()
{
    var lobjForm = document.forms[0];
    lobjForm.action = lobjForm.action.split("?")[0];
    //lobjForm.submit();
}
//-----------------------------------------------------------------------------------
function checkAlert()
{
    var AlertChk = jsFindCheckBox("chkActivateAlert", null);
    
    getElementById("spnAlertFrequency").style.display = (AlertChk.checked) ? "block" : "none";
}
//-----------------------------------------------------------------------------------
function jsPopulateSearchWithin(lobjSel, lobjHdn)
{
    var lstrSel = new String();
    var lstrCmm = new String();
    
    for (var i = 0; i < lobjSel.options.length; i++)
    {
        lstrSel += lstrCmm + lobjSel.options[i].value;
        lstrCmm = "^";
    }
    //hdnSearchWithinZip
    lobjHdn.value = lstrSel;
}
//-----------------------------------------------------------------------------------
function addLocation(astrWhich)
{
    var lobjForm = document.forms[0];
    
    switch(astrWhich.toLowerCase())
    {
        case "zip" :
            var lobjZipMiles = lobjForm.elements[jsFindSelectOne("ddlMileRadiusByZip")];
            var lobjZip = lobjForm.elements[jsFindTextBox("txtZipCode")];
            var lobjSelZip = lobjForm.elements[jsFindSelectOne("ddlSearchWithinZip")];
            var lobjHdnZip = lobjForm.elements[jsFindHidden("hdnSearchWithinZip")];
            
            //validate zip code
            if (lobjZip.value == "" || isNaN(lobjZip.value))
            {
                alert("Enter a numeric zip code in order to proceed");
                lobjZip.focus();
            }
            else if (validateLocation(astrWhich, lobjSelZip, lobjZipMiles, "", "", lobjZip))
            {
                var objOption = getNewOption(astrWhich, lobjZipMiles, "", "", lobjZip);
                lobjSelZip.options[lobjSelZip.options.length] = objOption;
                jsPopulateSearchWithin(lobjSelZip, lobjHdnZip);
                lobjZip.value = ""; 
                lobjZip.focus();
            }        
            break;
            
        case "city" :
            var lobjCityMiles = lobjForm.elements[jsFindSelectOne("ddlMileRadiusByCity")];
            var lobjCity = lobjForm.elements[jsFindTextBox("txtCity")];
            var lobjState = lobjForm.elements[jsFindSelectOne("ddlState")];   
            var lobjSelCity = lobjForm.elements[jsFindSelectOne("ddlSearchWithinCity")];
            var lobjHdnCity = lobjForm.elements[jsFindHidden("hdnSearchWithinCity")];
            
            //validate city
            if (lobjCity.value == "")
            {
                alert("Select a city in order to proceed");
                lobjCity.focus();
            }
            else if (lobjState.options[lobjState.options.selectedIndex].value == "")
            {
                alert("Select a state in order to proceed");
                lobjState.focus();
            }
            else if (validateLocation(astrWhich, lobjSelCity, lobjCityMiles, lobjCity, lobjState, ""))
            {
                var objOption = getNewOption(astrWhich, lobjCityMiles, lobjCity, lobjState, "");
                lobjSelCity.options[lobjSelCity.options.length] = objOption;
                jsPopulateSearchWithin(lobjSelCity, lobjHdnCity);
                lobjCity.value = "";
                lobjCity.focus();        
            }        
            break;
            
/*  DKS - 9/14/2007 - Requested removed by client            
        case "facility" :
        
            var lobjFacility = lobjForm.elements[jsFindSelectOne("ddlFacility")];
            var lobjFacilityState = lobjForm.elements[jsFindSelectOne("ddlFacilityState")];   
            var lobjSelFacility = lobjForm.elements[jsFindSelectOne("ddlSearchWithinFacility")];
            var lobjHdnFacility = lobjForm.elements[jsFindHidden("hdnSearchWithinFacility")];
            
            //validate facility
            if (lobjFacility.options[lobjFacility.options.selectedIndex].value == "")
            {
                alert("Select a facility in order to proceed");
                lobjFacility.focus();
            }
            else if (validateLocation(astrWhich, lobjSelFacility, "", lobjFacility, lobjFacilityState, ""))
            {
                var objOption = getNewOption(astrWhich, "", lobjFacility, lobjFacilityState, "");
                lobjSelFacility.options[lobjSelFacility.options.length] = objOption;
                jsPopulateSearchWithin(lobjSelFacility, lobjHdnFacility);
            }        
        
            break;
*/            
    }
}
//-----------------------------------------------------------------------------------
function removeLocation(astrWhich)
{
    var lobjForm = document.forms[0];

    switch(astrWhich.toLowerCase())
    {
        case "zip" :
            var lobjSel = lobjForm.elements[jsFindSelectOne("ddlSearchWithinZip")];
            var lobjHdn = lobjForm.elements[jsFindHidden("hdnSearchWithinZip")];
            
            break;
        case "city" :
            var lobjSel = lobjForm.elements[jsFindSelectOne("ddlSearchWithinCity")];
            var lobjHdn = lobjForm.elements[jsFindHidden("hdnSearchWithinCity")];
            
            break;
            
/*  DKS - 9/14/2007            
        case "facility" :  
            var lobjSel = lobjForm.elements[jsFindSelectOne("ddlSearchWithinFacility")];
            var lobjHdn = lobjForm.elements[jsFindHidden("hdnSearchWithinFacility")];
            
            break;
*/            
    }
    
    if (lobjSel.options.length > 0)
    {
        var lintSelIndex = lobjSel.options.selectedIndex;
        if (lintSelIndex > -1)
        {   
            lobjSel.options[lintSelIndex] = null;
            jsPopulateSearchWithin(lobjSel, lobjHdn);
        }
        else
        {
            alert("Select the item that you want to remove");
            lobjSel.focus();
        }
    }
    else
    {
        alert("There are not items to remove");
    }    
}
//-----------------------------------------------------------------------------------
function validateLocation(astrWhich, lobjSel, lobjMiles, lobjCity, lobjState, lobjZip)
{
    for (var i = 0; i < lobjSel.options.length; i++)
    {   
        switch(astrWhich.toLowerCase())
        {
            case "zip" :
                    var item = lobjMiles.options.selectedIndex;
                    var mile = lobjMiles.options[item].value;
                    var zip = trim(lobjZip.value);
                    
                    var chk1 = lobjSel.options[i].value.toLowerCase();
                    var chk2 = (mile + "|" + zip).toLowerCase();     
                break;
                
            case "city" :
                    var item = lobjMiles.options.selectedIndex;
                    var mile = lobjMiles.options[item].value;
                    var city = trim(lobjCity.value);
                    
                    var item = lobjState.options.selectedIndex;
                    var state = lobjState.options[item].value;
                    
                    var chk1 = lobjSel.options[i].value.toLowerCase();
                    var chk2 = (mile + "|" + city + "|" + state).toLowerCase();          
                break;

/*  DKS - 9/14/2007 Removed at client request
            case "facility" :
                    var item = lobjCity.options.selectedIndex;
                    var facilityid = lobjCity.options[item].value;
                    var facility = lobjCity.options[item].text;
                    
                    var item = lobjState.options.selectedIndex;
                    var state = lobjState.options[item].value;
                    
                    
                    var chk1 = lobjSel.options[i].value.toLowerCase();
                    var chk2 = (facilityid + "|" + facility).toLowerCase();  
                break;
*/                
        }   
        
        if (chk1 == chk2){
            alert("You cannot add a duplicate item");
            return false;
        }
    }
    return true;
}
//-----------------------------------------------------------------------------------
function getNewOption(astrWhich, lobjSelMile, lobjCity, lobjState, lobjZip)
{
    switch(astrWhich.toLowerCase())
    {
        case "zip" :
                var item = lobjSelMile.options.selectedIndex;
                var text = lobjSelMile.options[item].text;
                var value = lobjSelMile.options[item].value;
                var lstrZip = trim(lobjZip.value);
                
                var textStr = "Search within " + value + " miles of " + lstrZip;
                var valueStr = value + "|" + lstrZip;        
            break;
            
        case "city" :
                var item = lobjSelMile.options.selectedIndex;
                var text = lobjSelMile.options[item].text;
                var value = lobjSelMile.options[item].value;
                var lstrCity = trim(lobjCity.value);
                
                var sitem = lobjState.options.selectedIndex;
                var stext = lobjState.options[sitem].text;
                var svalue = lobjState.options[sitem].value;
                
                var textStr = "Search within " + value + " miles of " + lstrCity + ", " + stext;
//                var valueStr = value + "|" + lstrCity + "|" + svalue + "|" + stext;            
                var valueStr = value + "|" + lstrCity + "|" + stext;            
            break;

/*  DKS 9/14/2007 - Removed at client request            
        case "facility" :
                var item = lobjCity.options.selectedIndex;
                var text = lobjCity.options[item].text;
                var value = lobjCity.options[item].value;
                
                var sitem = lobjState.options.selectedIndex;
                var stext = lobjState.options[sitem].text;
                var svalue = lobjState.options[sitem].value;
                
                var textStr = "Search within " + text;
                var valueStr = value + "|" + text;
        
            break;
*/            
    } 
    
    var newOption = new Option(textStr, valueStr)

    return newOption;
}
//-----------------------------------------------------------------------------------
function jsLoadSearchWithin()
{
    jsProcessLoadSearchWithin("zip", "ddlSearchWithinZip", "hdnSearchWithinZip");
    jsProcessLoadSearchWithin("city", "ddlSearchWithinCity", "hdnSearchWithinCity");
//  DKS - 9/14/2007 - Removed at client request    
//    jsProcessLoadSearchWithin("facility", "ddlSearchWithinFacility", "hdnSearchWithinFacility");
}
//-----------------------------------------------------------------------------------
function jsProcessLoadSearchWithin(astrWhich, astrSel, astrHdn)
{
    var lobjForm = document.forms[0];
    
    var lobjSel = lobjForm.elements[jsFindSelectOne(astrSel)];    
    var lobjHdn = lobjForm.elements[jsFindHidden(astrHdn)];
    
    if (trim(lobjHdn.value) != "")
    {
        var lobjArr = lobjHdn.value.split("^");
            
        for (var i = 0; i < lobjArr.length; i++)
        {
            var valueStr = trim(lobjArr[i]); 
            var strArr = lobjArr[i].split("|");
            
            switch(astrWhich)
            {
                case "zip" : var textStr = "Search within " + strArr[0] + " miles of " + strArr[1]; break;
                case "city" : var textStr = "Search within " + strArr[0] + " miles of " + strArr[1] + ", " + strArr[2]; break;
                
// DKS - 9/14/2007 - removed at client request                
//                case "facility" : var textStr = "Search within " + strArr[1]; break;
            }
            
            var newOption = new Option(textStr, valueStr);
            lobjSel.options[lobjSel.options.length] = newOption;
        }
    }
}
//-----------------------------------------------------------------------------------
// DKS - 9/14/2007 - removed at client request
/*
function jsGetFacilityByState()
{
    var lobjForm = document.forms[0];
    
    var lobjFacility = lobjForm.elements[jsFindSelectOne("ddlFacility")];
    var lobjFacState = lobjForm.elements[jsFindSelectOne("ddlFacilityState")];
    
    var lstrFilter = lobjFacState.options[lobjFacState.options.selectedIndex].text;
    var objOption = new Option("Loading .... Please wait!", "");
    
    lobjFacility.options.length = 0;
    
    lobjFacility.options[lobjFacility.options.length] = objOption;
    
    lobjFacility.disabled = true;
    
    GetFacilityByState(lstrFilter, "|", "^");
}

//-----------------------------------------------------------------------------------
function Callback_GetFacilityByState()
{
    var lobjForm = document.forms[0];
    var lobjFacility = lobjForm.elements[jsFindSelectOne("ddlFacility")];

    var lstrResult = GetCallback().ReturnValue;
    var larrResult = lstrResult.split("^");
    
    lobjFacility.options.length = 0;
    
    for (var i = 0; i < larrResult.length; i++)
    {
        var arrOption = larrResult[i].split("|");

        var objOption = new Option(arrOption[1], arrOption[0]);

        lobjFacility.options[lobjFacility.options.length] = objOption;
    }
    
    lobjFacility.disabled = false;
}
*/

//-----------------------------------------------------------------------------------
function showoptions(num)
{
    var spn = document.getElementById("sp_"+num)
    var div = document.getElementById("dv_"+num)
    var ste = div.style.display.toLowerCase();
         
    if (ste == "" || ste == "none")
    {
        div.style.display = "block";
        spn.innerHTML = "Hide Choices";
    }
    else 
    {
        div.style.display = "none";
        spn.innerHTML = "Choices";
    }
}
