<!--var SelectPosition;function calcForm(calcfields) {
    var arrCalcfields = calcfields.split(';')
    for (var i = 0; i < arrCalcfields.length - 1; i++) {
        var calcField = arrCalcfields[i];
        if (document.getElementById(calcField) != null) {
            var Incfields = calcField + '_f';
            var Incvalues = calcField + '_v';
            var incCalc = calcField + '_c';
            if (document.getElementById(incCalc) != null) {
                var arrCalc = document.getElementById(incCalc).value.split(';');
                var field1 = arrCalc[0];
                var field2 = arrCalc[2];
                var operation = arrCalc[1];
                var value1 = '';
                var value2 = '';
                if (document.getElementById(Incvalues) != null) {
                    var arrValues = document.getElementById(Incvalues).value.split(';')
                    value1 = arrValues[0];
                    value2 = arrValues[1];
                }                        
                if (document.getElementById(field1) != null) {
                    if (document.getElementById(field1).value != '') {
                        value1 = document.getElementById(field1).value;
                    }
                    else {
                        if (operation == 'M') {
                            value1 = 1
                        }
                        else {
                            value1 = '';
                        }
                    }
                }
                if (document.getElementById(field2) != null) {
                    if (document.getElementById(field2).value != '') {
                        value2 = document.getElementById(field2).value;
                        if (operation == 'D' && value2 == 0) {
                            alert('Cannot divide by zero');
                            document.getElementById(field2).value = '';
                            value2 = '';
                        }
                    }
                    else {
                        if (operation == 'M') {
                            value2 = 1
                        }
                        else {
                            value2 = '';
                        }
                    }
                }
                var total = 0;
                if (value1 != '' && value2 != '') {
                    switch(operation) {
                        case 'A':
                            total = parseFloat(value1) + parseFloat(value2);
                            break;
                        case 'S':
                            total = parseFloat(value1) - parseFloat(value2);
                            break;
                        case 'M':
                            if (value1 == 1 && value2 == 1) {
                                total = '';
                            }
                            else {
                                total = parseFloat(value1) * parseFloat(value2);
                            }
                            break;
                        case 'D':
                            if (value2 == 0) {
                                total = 'Divide Error';
                            }
                            else {
                                total = parseFloat(value1) / parseFloat(value2);
                            }
                            break;
                    }
                    document.getElementById(calcField).value = total;
                }
                else {
                    document.getElementById(calcField).value = ''
                }
            }
            else {
                var total = 0;
                var havevalue = false;
                var havedecimal = false;
                if (document.getElementById(Incfields) != null && document.getElementById(Incvalues) != null) {
                    var arrIncfields = document.getElementById(Incfields).value.split(';');
                    var arrIncvalues = document.getElementById(Incvalues).value.split(';');
                    for (var x = 0; x < arrIncfields.length - 1; x++) {
                        var partField = arrIncfields[x];
                        if (document.getElementById(partField) != null) {
                            if (document.getElementById(partField).value != '' &&  document.getElementById(partField) != ' ') {
                                var myvalue = document.getElementById(partField).value;
                                myvalue = myvalue.replace(/,/g,'');
                                var havevalue = true;
                                total += parseFloat(myvalue);
                                var totalstring = total + ''
                                if (totalstring.indexOf('.') != -1) {
                                    havedecimal = true;
                                }
                            }
                        }
                        else {
                            var havevalue = true;
                            total += parseFloat(arrIncvalues[x]);
                        }
                    }
                    if (havevalue == true) {
                        if (havedecimal == true) {
                            document.getElementById(calcField).value = total.toFixed(2);
                        }
                        else {
                            document.getElementById(calcField).value = total;
                        }
                    }
                    else {
                        document.getElementById(calcField).value = ''
                    }
                }
            } 
        }
    }
}
//function for converting a return to a tab for a number field in a form//*** NB: need to develop a version that works in Firefoxfunction TabNumber(event) {
    if(event.keyCode==13){
        event.keyCode=9;
    }
}function MM_findObj(n, d) { //v4.01  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);  if(!x && d.getElementById) x=d.getElementById(n); return x;}function MM_showHideLayers() { //v6.0  var i,p,v,obj,args=MM_showHideLayers.arguments;  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }    obj.visibility=v; }}function CheckURL(ctl, args) {
    // function to check for the presense of "http" in URI. //
    // assumes that the URI is entered in a textbox with prefix txt
    // and that the custom validator has the same name with prefix val
    // e.g.: valWebsite validates txtWebsite
    var myvalue = args.Value;
    var x = myvalue.search('http');
    if (x != -1) {
        args.IsValid = false;
        var x = myvalue.search('http://');
        if (x == 0) {
            var mycontrol = ctl.id.replace('val', 'txt')
            myvalue = myvalue.substring(7);
            document.getElementById(mycontrol).value = myvalue;
            var x = myvalue.search(/\./);
            if (x !=  -1) {
                args.IsValid = true;
            }
            else {
                args.IsValid = false;
            }
        }
    }
    else {
        var x = myvalue.search(/\./);
        if (x != -1) {
            args.IsValid = true;
        }
        else {
            args.IsValid = false;
        }
    }        
}/*em*/function sendEmail(em) { location.href = "mailto:" + dm(em); }
function dm(em) { var um = ""; for (i=0; i < em.length;) { var lt = ""; lt = em.charAt(i) + em.charAt(i+1); um += String.fromCharCode(parseInt(lt,16)); i += 2; } return um; }
function displayStatus(em) { window.status = "mailto:" + dm(em); }
function clearStatus() { window.status = ""; }
/* The following functions are used to show and hide elements in the profile.aspx and profile_print.aspx pages */function ClearGraphs() {    var divs = document.getElementsByTagName("div");    for (i = 0; i < divs.length; i++) {        var divname = divs[i].id.toString()        if ((divname.substring(0, 5) == "chart") || (divname.substring(0, 3) == "tbl") || (divname.substring(0, 3) == "lst")) {            document.getElementById(divname).style.visibility = "hidden";        }    }}

function ShowGraph(name) {
    ClearGraphs()
    if (document.getElementById(name) != null) {
        document.getElementById(name).style.visibility = "visible";
        if (name == "tblGrants") {
            document.getElementById("graphs").style.height = "2000px";
            document.getElementById("graphs").style.border = "none";
        }
        else {
            document.getElementById("graphs").style.height = "";
            document.getElementById("graphs").style.border = "1px solid #d6562e";
        }
    }
}function ClearGroups() {    var divs = document.getElementsByTagName("div");    for (i = 0; i < divs.length; i++) {        var divname = divs[i].id.toString()        if (divname.substring(0, 3) == "grp") {            document.getElementById(divname).style.visibility = "hidden";        }    }}

function ShowGroup() {
    ClearGroups()
    if (document.getElementById("lstGraphGroup") != null) {
        switch (document.getElementById("lstGraphGroup").selectedIndex) {
            case 0:
                document.getElementById("grp1").style.visibility = "visible";
                break;
            case 1:
                document.getElementById("grp2").style.visibility = "visible";
                break;
            case 2:
                document.getElementById("grp3").style.visibility = "visible";
                break;
            case 3:
                document.getElementById("grp4").style.visibility = "visible";
                break;
            case 4:
                document.getElementById("grp5").style.visibility = "visible";
                break;
            case 5:
                document.getElementById("grp6").style.visibility = "visible";
                break;
        }
    }
}function SelectGroup(groupno) {    ClearGroups()    switch (groupno) {        case 1:
            document.getElementById("grp1").style.visibility = "visible";
            break;
        case 2:
            document.getElementById("grp2").style.visibility = "visible";
            break;
        case 3:
            document.getElementById("grp3").style.visibility = "visible";
            break;
        case 4:
            document.getElementById("grp4").style.visibility = "visible";
            break;
        case 5:
            document.getElementById("grp5").style.visibility = "visible";
            break;
        case 6:
            document.getElementById("grp6").style.visibility = "visible";
            break;
    }        }function GraphExplanation(status) {    if (status == 1) {        document.getElementById("explanation").style.display="block"
        document.getElementById("profiletable").style.display="none"
        document.getElementById("graphsleft").style.display="none"
        document.getElementById("graphsright").style.display="none"
        if (document.getElementById("lnkexplanation") != null) {
            document.getElementById("lnkexplanation").style.display="none"
        }
        if (document.getElementById("lnkgraphs") != null) {
            document.getElementById("lnkgraphs").style.display="block"
        }
    }    else {        document.getElementById("explanation").style.display="none"
        document.getElementById("profiletable").style.display="block"        
        document.getElementById("graphsleft").style.display="block"
        document.getElementById("graphsright").style.display="block"
        if (document.getElementById("lnkexplanation") != null) {
            document.getElementById("lnkexplanation").style.display="block"
        }
        if (document.getElementById("lnkgraphs") != null) {
            document.getElementById("lnkgraphs").style.display="none"
        }
    }}function TogglePrint(control, chart) {    if (control.checked == true) {        document.getElementById(chart).className="chartprint";    }    else {        document.getElementById(chart).className="chartnonprint";        document.getElementById("chSelectPrint").checked = false;    }}function TogglePrintDisplay(selection) {    var boxes = document.getElementsByTagName("input");
    document.getElementById("chSelectPrint").checked = true;
    for (i = 0; i < boxes.length; i++) {        var boxname = boxes[i].id.toString()        if (boxname.substring(0, 3) == "chk") {            if (boxname.substring(3,6) == "tbl") {                var mychart = "tbl" + boxname.substring(6)                var myselect = "selecttbl" + boxname.substring(6)            }            else {                var mychart = "chart" + boxname.substring(3)                var myselect = "selectchart" + boxname.substring(3)            }            switch (selection) {
                case 1: // charts and tables
                    document.getElementById(boxname).checked = true;                    document.getElementById(myselect).style.visibility="visible";                    document.getElementById(mychart).className="chartprint";                    document.getElementById(mychart).style.visibility="visible";                    document.getElementById("chTable").checked = true;                    document.getElementById("profiletable").className="chartprint";                    document.getElementById("profiletable").style.visibility="visible";                    break;
                case 2: // charts only
                    if (boxname.substring(3, 6) == "tbl") {
                        document.getElementById(boxname).checked = false;                        document.getElementById(myselect).style.visibility="hidden";                        document.getElementById(mychart).className="chartnonprint";                        document.getElementById(mychart).style.visibility="hidden";                    }
                    else {
                        document.getElementById(boxname).checked = true;                        document.getElementById(myselect).style.visibility="visible";                        document.getElementById(mychart).className="chartprint";                        document.getElementById(mychart).style.visibility="visible";                    }
                    document.getElementById("chTable").checked = false;                    document.getElementById("profiletable").className="chartnonprint";                    document.getElementById("profiletable").style.visibility="hidden";                    break;
                case 3: // tables only
                    if (boxname.substring(3, 6) != "tbl") {
                        document.getElementById(boxname).checked = false;                        document.getElementById(myselect).style.visibility="hidden";                        document.getElementById(mychart).className="chartnonprint";                        document.getElementById(mychart).style.visibility="hidden";                    }
                    else {
                        document.getElementById(boxname).checked = true;                        document.getElementById(myselect).style.visibility="visible";                        document.getElementById(mychart).className="chartprint";                        document.getElementById(mychart).style.visibility="visible";                    }
                    document.getElementById("chTable").checked = true;                    document.getElementById("profiletable").className="chartprint";                    document.getElementById("profiletable").style.visibility="visible";                    break;
            }
        }    }}  function SelectPrint(control) {    var boxes = document.getElementsByTagName("input");    if (control.checked == true) {        for (i = 0; i < boxes.length; i++) {            var boxname = boxes[i].id.toString()            if (boxname.substring(0, 3) == "chk") {                if (boxname.substring(3, 6) == "tbl") {                    if (document.forms["aspnetForm"].optPrint[0].checked == true || document.forms["aspnetForm"].optPrint[2].checked == true) {                        var mychart = "tbl" + boxname.substring(6)                        document.getElementById(boxname).checked = true;                        document.getElementById(mychart).className="chartprint";                    }                }                else {                    if (document.forms["aspnetForm"].optPrint[0].checked == true || document.forms["aspnetForm"].optPrint[1].checked == true) {                        var mychart = "chart" + boxname.substring(3)                        document.getElementById(boxname).checked = true;                        document.getElementById(mychart).className="chartprint";                    }                }            }        }        if (document.forms["aspnetForm"].optPrint[0].checked == true || document.forms["aspnetForm"].optPrint[2].checked == true) {            document.getElementById("chTable").checked = true;            document.getElementById("profiletable").className="chartprint";        }    }    else {        for (i = 0; i < boxes.length; i++) {            var boxname = boxes[i].id.toString()            if (boxname.substring(0, 3) == "chk") {                if (boxname.substring(3, 6) == "tbl") {                    if (document.forms["aspnetForm"].optPrint[0].checked == true || document.forms["aspnetForm"].optPrint[2].checked == true) {                        var mychart = "tbl" + boxname.substring(6)                        document.getElementById(boxname).checked = false;                        document.getElementById(mychart).className="chartnonprint";                            }                }                else {                    if (document.forms["aspnetForm"].optPrint[0].checked == true || document.forms["aspnetForm"].optPrint[1].checked == true) {                        var mychart = "chart" + boxname.substring(3)                        document.getElementById(boxname).checked = false;                        document.getElementById(mychart).className="chartnonprint";                            }                }            }        }        if (document.forms["aspnetForm"].optPrint[0].checked == true || document.forms["aspnetForm"].optPrint[2].checked == true) {            document.getElementById("chTable").checked = false;            document.getElementById("profiletable").className="chartnonprint";        }    }}// The following functions are used for AJAX delivery of contentfunction GetOrgList(state, county, town, zip, np, type) {
    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null) {
        alert ("We're sorry, but your browser does not support this function")
        return
    }
    var url= encodeURI("../public/getorglist.aspx?st=" + state + "&cn=" + county + "&tn=" + town + "&zp=" + zip + "&np=" + np + "&type=" + type);
    xmlHttp.onreadystatechange = orgstateChanged;
    xmlHttp.open("GET", url, true)
    xmlHttp.send(null)
    if (np == 1) {
        if (document.getElementById("chart17").style.visibility == "visible") {
            document.getElementById("lnkReturn").href = "javascript:ShowGraph('chart17')"
        }
        else {
            document.getElementById("lnkReturn").href = "javascript:ShowGraph('tbl17')"
        }
    }
    else {
        if (document.getElementById("chart18").style.visibility == "visible") {
            document.getElementById("lnkReturn").href = "javascript:ShowGraph('chart18')"
        }
        else {
            document.getElementById("lnkReturn").href = "javascript:ShowGraph('tbl18')"        
        }
    }
} 

function orgstateChanged() {
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
        ShowGraph("lstOrgs")
        document.getElementById("OrgListContents").innerHTML=xmlHttp.responseText
    } 
} 

function GetGrantList(oid, state, county, town, zip, funder, year, type) {   
    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null) {
        alert ("We're sorry, but your browser does not support this function")
        return
    }
    var url= encodeURI("../members/getgrantlist.aspx?oid=" + oid + "&st=" + state + "&cn=" + county + "&tn=" + town + "&zp=" + zip + "&funder=" + funder + "&year=" + year + "&type=" + type);
    xmlHttp.onreadystatechange = grantstateChanged;
    xmlHttp.open("GET", url, true)
    xmlHttp.send(null)
} 

function grantstateChanged() {
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
        ShowGraph("lstGrants")
        document.getElementById("GrantsContents").innerHTML=xmlHttp.responseText
        document.getElementById("GrantsContents").scrollTop = 0
    } 
} 

function SetResolution(height, width) {
    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null) {
        return
    }
    var url= encodeURI("./public/SetResolution.aspx?h=" + height + "&w=" + width);
    xmlHttp.onreadystatechange = resstateChanged;
    xmlHttp.open("GET", url, true)
    xmlHttp.send(null)
}

function resstateChanged() {
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
    }
}

function GetXmlHttpObject() { 
    var objXMLHttp=null
    if (window.XMLHttpRequest) {
        objXMLHttp=new XMLHttpRequest()
    }
    else if (window.ActiveXObject) {
        objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
    }
    return objXMLHttp
} 	
// StyleSwitcher functions written by Paul Sowden// http://www.alistapart.com/stories/alternate/function setActiveSS(title) { var i, a, main; for (i=0; (a = document.getElementsByTagName("link")[i]); i++) { if (a.getAttribute("rel") && a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) { a.disabled = true; if(a.getAttribute("title") == title) a.disabled = false; } }     if (document.getElementById("LargeTextLink") != null) {        if (title == "large") {            document.getElementById("LargeTextLink").style.display = "none";            document.getElementById("NormalTextLink").style.display = "block";        }        else {            document.getElementById("LargeTextLink").style.display = "block";            document.getElementById("NormalTextLink").style.display = "none";        }    }}function getActiveSS() { var i, a; for (i=0; (a = document.getElementsByTagName("link")[i]); i++) { if (a.getAttribute("rel") && a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled ) return a.getAttribute("title"); } return null; }function getPreferredSS() { var i, a; for (i=0; (a = document.getElementsByTagName("link")[i]); i++) { if (a.getAttribute("rel") && a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("rel").indexOf("alt") == -1 && a.getAttribute("title") ) return a.getAttribute("title"); } return null; }function createCookie(name,value,days) { if (days) { var date = new Date(); date.setTime(date.getTime()+(days*24*60*60*1000)); var expires = "; expires="+date.toGMTString(); } else expires = ""; document.cookie = name+"="+value+expires+"; path=/"; }function readCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for(var i=0;i < ca.length;i++) { var c = ca[i]; while (c.charAt(0)==' ') c = c.substring(1,c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); } return null; }window.onload = function(e) { var cookie = readCookie("style"); var title = cookie ? cookie : getPreferredSS(); setActiveSS(title); }window.onunload = function(e) { var title = getActiveSS(); createCookie("style", title, 365); }var cookie = readCookie("style");var title = cookie ? cookie : getPreferredSS();setActiveSS(title);// End StyleSwitcher functions



// Begin Map Functions //

var	markers = new Array();
var infoHtmls = new Array();

function LoadMap() {
    map.centerAndZoom(new GPoint(-71.555474, 43.861363), 10);
	map.addControl(new GSmallMapControl());
	map.addControl(new GMapTypeControl());
}

function AddPoint(mynum, mylon, mylat, myicon, nm, ad1, ad2, tn, st, zp, pn, fx, wb) {
    var dadr = "";
	if (ad1 != "") { dadr = ad1.replace("|", ",") }
	if (ad2 != "") { dadr = dadr + ", " + ad1.replace("|", "'") }
	if (tn != "") { dadr = dadr + ", " + tn.replace("|", "'") }
	if (st != "") { dadr = dadr + ", " + st.replace("|", "'") }
	if (zp != "") { dadr = dadr + "  " + zp.replace("|", "'") }
	dadr = encodeURI(dadr) 
    if (nm.length > 30) {
        var y = nm.substring(0, 30).lastIndexOf(" ");
        var tempnm = nm.substring(0, y);
        var tempend = nm.substring(y);
        if (tempend.length > 30) {
            while (tempend.length > 30) {
                var y = tempend.substring(0, 30).lastIndexOf(" ");
                tempnm = tempnm + "<br />" + tempend.substring(0, y)
                tempend = tempend.substring(y)
            }
        }
        nm = tempnm + "<br />" + tempend;
    }
	if (nm != "") { nm = "<strong>" + nm.replace("|", "'") + "</strong>" }
	if (ad1 != "") { ad1 = "<br />" + ad1.replace("|", "'") }
	if (ad2 != "") { ad2 = "<br />" + ad2.replace("|", "'") }
	var tnLine = "";
	if (tn != "") { tnLine = tn.replace("|", "'") }
	if (st != "") { tnLine = tnLine + ",&nbsp;" + st.replace("|", "'") }
	if (zp != "") { tnLine = tnLine + "&nbsp;&nbsp;" + zp.replace("|", "'") }
	if (tnLine != "") { tnLine = "<br />" + tnLine  }
	if (pn != "") { pn = "<br />Phone: " + pn.replace("|", "'") }
	if (fx != "") { fx = "<br />Fax: " + fx.replace("|", "'") }
	if (wb != "") { wb = "<br />Website: <a href='http://" + wb.replace("|", "'") + "' target='_new'>" + wb + "</a>" }
	var MyZoom = "<br /><a href='javascript:zoomIn("+mylon+","+mylat+");'>Zoom In</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href='javascript:zoomFrom("+mylon+","+mylat+");'>Zoom Out</a>"
	var MyDirections = "<a href='javascript:GetDirections(\u0022"+dadr+"\u0022);'>Get Directions</a>"
	infoHtmls[mynum] = "<div><p>" + nm + ad1 + ad2 + tnLine + pn + fx + wb + MyZoom + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + MyDirections + "</p></div>";

    var icon = new GIcon();
    var point = new GPoint(mylon, mylat);
    switch (myicon) {
        case '^^':
            icon.image = "../media/pin.png";
            break;
        case 'A':
            icon.image = "../media/a.png";
            break;
        case 'B':
            icon.image = "../media/b.png";
            break;
        case 'C':
            icon.image = "../media/c.png";
            break;
        case 'D':
            icon.image = "../media/d.png";
            break;
        case 'E':
            icon.image = "../media/e.png";
            break;
        case 'F':
            icon.image = "../media/f.png";
            break;
        case 'G':
            icon.image = "../media/g.png";
            break;
        case 'H':
            icon.image = "../media/h.png";
            break;
        case 'I':
            icon.image = "../media/i.png";
            break;
        case 'J':
            icon.image = "../media/j.png";
            break;
    }
    icon.shadow = "../media/shadow.png";
    icon.iconSize = new GSize(20, 34);
    icon.shadowSize = new GSize(37, 34);
    icon.iconAnchor = new GPoint(10, 34);
    icon.infoWindowAnchor = new GPoint(5, 1);
    markers[mynum] = new GMarker(point, icon);
//    GEvent.addListener(markers[mynum], 'click', function() {
//	marker.openInfoWindowHtml(infoHtmls[mynum]);
//    });
    GEvent.addListener(markers[mynum],'click',makeOpenerCaller(mynum));

    map.addOverlay(markers[mynum]);

}


function zoomOut() {
    setMap(firstLng, firstLat);
    map.closeInfoWindow();
}

function zoomToFit(maxlon, minlon, maxlat, minlat, ctrlat, ctrlon) {
        if ((maxlon != minlon) && (maxlat != minlat)) {
            var zoom=Math.max((maxlon - minlon),(maxlat - minlat)); 
            zoom=(zoom)/0.00539/Math.cos(ctrlat/180*Math.PI); 
            zoom=zoom; 
            zoom=Math.log(zoom)/Math.LN2; 
            zoom=Math.ceil(zoom); 
            if (zoom < 0) {
                zoom = 0
                }
            map.centerAndZoom(new GPoint(ctrlon,ctrlat),zoom); 
            var bounds=map.getBoundsLatLng(); 
            var backup=0; 
            if ((minlat-bounds.minY)/(bounds.maxY-bounds.minY)<.1) { 
                    backup=1; 
            } 
            if ((minlon-bounds.minX)/(bounds.maxX-bounds.minX)<.1) { 
                    backup=1; 
            } 
            if ((maxlon-bounds.maxX)/(bounds.maxX-bounds.minX)>.9) { 
                    backup=1; 
            } 
            if ((maxlat-bounds.maxY)/(bounds.maxY-bounds.minY)>.9) { 
                    backup=1; 
            } 
            if (backup) { 
                    map.centerAndZoom(new GPoint(ctrlon,ctrlat),zoom+1); 
            }
        }
        else {
            setMap(minlon, minlat);
        }
}


function setMap(ctrLng, ctrLat) {
    map.centerAndZoom(new GPoint(ctrLng, ctrLat), 3);
}


// Open the info box for the specified marker.
function myOpener(i) {
    markers[i].openInfoWindowHtml(infoHtmls[i]);
}

// This returns a function closure that calls myOpener() with the specified arg.
function makeOpenerCaller(i) {
    return function() { myOpener(i); };
}

function zoomIn(lng,lat) {
    var x = map.getZoomLevel();
    if (x > 3) {
        map.centerAndZoom(new GPoint(lng, lat), 3);	
    }
    else {
        if (x > 0) {
            x = x - 1;
            map.centerAndZoom(new GPoint(lng, lat), x);	
        }
    }
}

function zoomFrom(lng,lat) {
    var x = map.getZoomLevel()
    x = x + 1;
    if (x > 13) {
        x = 13;
    }
    map.centerAndZoom(new GPoint(lng, lat), x);	
}

function endLoad() {
    document.getElementById("loadmsg").style.display="none";
}

function GetDirections(dadr) {
    n = prompt("Get Directions from: (street, town zip)","")
    if (n != "" && n != null) {
	    var myurl = "http://maps.google.com/maps?saddr=" + encodeURI(n) + "&daddr=" + encodeURI(dadr) + "&hl=en"
	    document.location = myurl;
    }
}
// End Map Functions //// Begin Form Functions //function ClearForm() {    document.getElementById("StandardName").value = "";}// End Form Functions //// Begin lookup form field functions //function LUHideScreens(fld) {    document.getElementById(fld + '_dSrch').style.display = 'none';
	document.getElementById(fld + '_dRst').style.display = 'none';
    document.getElementById(fld + '_dAE').style.display = 'none';
    document.getElementById(fld + '_ANF').style.display = 'none';
	document.getElementById(fld + '_dMch').style.display = 'none';
    document.getElementById(fld + '_dEn').style.display = 'none';
	document.getElementById(fld + '_dEnTyp').style.display = 'none';
	document.getElementById(fld + '_dIen').style.display = 'none';
    document.getElementById(fld + '_dOen').style.display = 'none';
    //added below
    document.getElementById(fld + '_adcn').style.display = 'none';
}function LUDisplaySearch(fld) {    LUHideScreens(fld)    document.getElementById(fld + '_dSrch').style.display = 'block';
}function LUDisplayResults(fld, found) {    LUHideScreens(fld)	document.getElementById(fld + '_dRst').style.display = 'block';
    if (found == true) {
	    document.getElementById(fld + '_dMch').style.display = 'block';
	    document.getElementById(fld + '_dAB').style.display = 'none';
	}
	else {
        document.getElementById(fld + '_ANF').style.display = 'block';
        document.getElementById(fld + '_dAB').style.display = 'block';
	}
    document.getElementById(fld + '_dAE').style.display = 'block';
}function LUDisplayEntry(fld, status, type) {    var myfunction = "LUDisplayDelay('" + fld + "', '" + status + "', '" + type + "');";    var t = setTimeout(myfunction,900)}function LUDisplayDelay(fld, status, type) {    LUHideScreens(fld);    document.getElementById(fld + '_dEn').style.display = 'block';
    
    
    if (status == 'new') {
        document.getElementById(fld + '_dEnTyp').style.display = 'block';
        if (type == 'ind') {
	        document.getElementById(fld + '_dOtl').style.display = 'none';
            document.getElementById(fld + '_dIen').style.display = 'block';        }
        else {
	        document.getElementById(fld + '_dOtl').style.display = 'block';
            document.getElementById(fld + '_dOen').style.display = 'block';            document.getElementById(fld + '_adcn').style.display = 'inline';        }
    }
    else {
        switch (type) {
            case 'org':
                document.getElementById(fld + '_dOen').style.display = 'block';
                document.getElementById(fld + '_adcn').style.display = 'inline';
                if (document.getElementById(fld + '_EFN').value != '' || document.getElementById(fld + '_ELN').value != '') {                    //AddLUContact(fld);	                document.getElementById(fld + '_dIen').style.display = 'block';
	                document.getElementById(fld + '_dOtl').style.display = 'block';
	                document.getElementById(fld + '_adcn').style.display = 'none';
	                document.getElementById(fld + '_EDS').value = '4';
                }                break;
            case 'ind':
	            document.getElementById(fld + '_dOtl').style.display = 'none';
                document.getElementById(fld + '_dIen').style.display = 'block';                break;
            case 'con':
                document.getElementById(fld + '_dOtl').style.display = 'block';
                document.getElementById(fld + '_dOen').style.display = 'block';
                if (document.getElementById(fld + '_EFN').value != '' || document.getElementById(fld + '_ELN').value != '') {                    //AddLUContact(fld);	                document.getElementById(fld + '_dIen').style.display = 'block';
	                document.getElementById(fld + '_dOtl').style.display = 'block';
	                document.getElementById(fld + '_adcn').style.display = 'none';
	                document.getElementById(fld + '_EDS').value = '4';
                }                break
        }
    }
    
    
//	if (status == 'new') {
//	    document.getElementById(fld + '_dEnTyp').style.display = 'block';
//	    if (type == 'ind') {
//	        //document.getElementById(fld + '_dOtl').style.display = 'block';
//	        alert('changed');
//	        document.getElementById(fld + '_dOtl').style.display = 'none';
//            document.getElementById(fld + '_dOen').style.display = 'none';//	    }
//	}
//	if (type == 'org') {
//        document.getElementById(fld + '_adcn').style.display = 'inline';
//        document.getElementById(fld + '_dOen').style.display = 'block';//        if (document.getElementById(fld + '_EFN').value != '' || document.getElementById(fld + '_ELN').value != '') {//            AddLUContact(fld);//        }//	}
//	else {
//        document.getElementById(fld + '_adcn').style.display = 'none';
//	    document.getElementById(fld + '_dIen').style.display = 'block';
//	    if (type == 'con' || status == 'new') {
//            document.getElementById(fld + '_dOen').style.display = 'block';//        }//        if (type == 'con') {//            document.getElementById(fld + '_dOtl').style.display = 'block';//        }//        //else {//        //    if (status == 'new') {//        //        document.getElementById(fld + '_dOtl').style.display = 'block';//        //    }//        //    else {//        //        document.getElementById(fld + '_dOtl').style.display = 'none';//        //    }//        //}//	}
}function AddLUContact(fld) {	document.getElementById(fld + '_dIen').style.display = 'block';
	document.getElementById(fld + '_dOtl').style.display = 'block';
	document.getElementById(fld + '_adcn').style.display = 'none';
	document.getElementById(fld + '_EID').value = 'A|' + document.getElementById(fld + '_EID').value;
	if (document.getElementById(fld + '_dEnTyp').style.display = 'block' && document.getElementById(fld + '_ET') != null) {
	    document.getElementById(fld + '_ET1').checked = true;  
	}
	document.getElementById(fld + '_EDS').value = '4';
}

function GetLUEntryList(fld) {  
    var lastname = document.getElementById(fld + '_SLN').value;
    var firstname = document.getElementById(fld + '_SFN').value;
    var town = document.getElementById(fld + '_STN').value;
    var state = document.getElementById(fld + '_SST').value;
    var country = '';
    var discipline = document.getElementById(fld + '_SDS').value;
    var institution = document.getElementById(fld + '_SIN').value;
    var sndx = '';
    if (document.getElementById(fld + '_SH').checked == true) {
        sndx = 'x';
    }
    if (lastname != '' || firstname != '' || town != '' || state != '' || country != '' || discipline != '' || institution != '') {
        xmlHttp=GetXmlHttpObject()
        if (xmlHttp==null) {
            alert ("We're sorry, but your browser does not support this function")
            return
        }
        var url= encodeURI("../../forms/displayentrylist.aspx?ln=" + lastname + "&fn=" + firstname + "&tn=" + town + "&st=" + state + "&ct=" + country + "&ds=" + discipline + "&in=" + institution + "&sd=" + sndx);
        xmlHttp.onreadystatechange = getLUStateChanged(fld);
        xmlHttp.open("GET", url, true)
        xmlHttp.send(null)
    }
    else {
        if (document.getElementById(fld + '_EDS').value == '1') {
            alert('Please enter one or more search criteria');
            document.getElementById(fld + '_EDS').value = '1';
        }
    }
} 

function getLUStateChanged(fld) {
    return function() {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
            var myJSONtext = xmlHttp.responseText;
            var mylist = document.getElementById(fld + '_lsMch');
            mylist.options.length = 0;
            if (myJSONtext != '' && myJSONtext.length <= 250000) {
                var myObject = JSON.parse(myJSONtext);
                for (i=0; i < myObject.names.length; i++) {
                    var opt1 = new Option(myObject.names[i].name, myObject.names[i].id, false, false);
                    mylist.options[mylist.options.length] = opt1;
                }
                LUDisplayResults(fld, true)
                document.getElementById(fld + '_EDS').value = '2';
                mylist.selectedIndex = 0;
                mylist.focus();
            }
            else {
                if (myJSONtext.length > 250000) {
                    alert('Too many entries found - please add additional search criteria.');
                }
                else {
                    LUDisplayResults(fld, false)
                    document.getElementById(fld + '_EDS').value = '2';
                }
            }
        }
    };
}

function ClearLUSearch(fld) {
    document.getElementById(fld + '_SLN').value = '';
    document.getElementById(fld + '_SFN').value = '';
    document.getElementById(fld + '_STN').value = '';
    document.getElementById(fld + '_SST').value = '';
    document.getElementById(fld + '_SDS').value = '';
    document.getElementById(fld + '_SIN').value = '';
    document.getElementById(fld + '_SH').checked = false;
}

function ClearLUEntry(fld) {
    document.getElementById(fld + '_EID').value = '';
    document.getElementById(fld + '_EFN').value = '';
    document.getElementById(fld + '_ELN').value = '';
    document.getElementById(fld + '_ELN_old').value = '';
    document.getElementById(fld + '_ETL').value = '';
    document.getElementById(fld + '_EON').value = '';
    document.getElementById(fld + '_EON_old').value = '';
    document.getElementById(fld + '_ES1').value = '';
    document.getElementById(fld + '_ES2').value = '';
    document.getElementById(fld + '_ETN').value = '';
    document.getElementById(fld + '_EST').value = '';
    document.getElementById(fld + '_EZP').value = '';
    document.getElementById(fld + '_ECN').value = '';
    document.getElementById(fld + '_EP1').value = '';
    document.getElementById(fld + '_EP2').value = '';
    document.getElementById(fld + '_EP3').value = '';
    document.getElementById(fld + '_EP4').value = '';
    document.getElementById(fld + '_EF1').value = '';
    document.getElementById(fld + '_EF2').value = '';
    document.getElementById(fld + '_EF3').value = '';
    document.getElementById(fld + '_EF4').value = '';
    document.getElementById(fld + '_EEM').value = '';
    document.getElementById(fld + '_EWB').value = '';
}

function SearchLUAgain(fld) {
    LUDisplaySearch(fld)
    document.getElementById(fld + '_EDS').value = '1';
}

function GetLUInfo(fld) {
    ClearLUEntry(fld)
    var myid = document.getElementById(fld + '_lsMch').value
    if (myid != '' && myid != null) {
        xmlHttp=GetXmlHttpObject()
        if (xmlHttp==null) {
            alert ("We're sorry, but your browser does not support this function")
            return
        }
        var url= encodeURI("../../forms/displayentrylist.aspx?id=" + myid);
        xmlHttp.onreadystatechange = entryLUStateChanged(fld);
        xmlHttp.open("GET", url, true)
        xmlHttp.send(null)            
    }
    else {
        alert('Please select an entry by clicking on its name, and pressing the Select button.');
    }
}

function entryLUStateChanged(fld) {
    return function() {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
            var myJSONtext = xmlHttp.responseText;
            if (myJSONtext != '') {
                var mytype = 'org';
                var myObject = JSON.parse(myJSONtext);
                var myid = myObject.names[0].id;
                var ids = myid.split('|');
                document.getElementById(fld + '_EID').value = myid
                if (myObject.names[0].fn != '') {
                    document.getElementById(fld + '_EFN').value = myObject.names[0].fn;
                    document.getElementById(fld + '_ELN').value = myObject.names[0].cn;
                    document.getElementById(fld + '_ELN_old').value = myObject.names[0].cn;
                    if (myObject.names[0].en != '' && ids[0] != '') {
                        document.getElementById(fld + '_EON').value = myObject.names[0].en;
                        document.getElementById(fld + '_EON_old').value = myObject.names[0].en;
                        //alert(document.getElementById(fld + '_EON_old').value);
                    }
                    else {
                        document.getElementById(fld + '_EON').value = '';
                        document.getElementById(fld + '_EON_old').value = '';
                    }
                    if (ids[0] != '') {
                        if (myObject.names[0].ctl != '') {
                            document.getElementById(fld + '_ETL').value = myObject.names[0].ctl;
                            document.getElementById(fld + '_dOtl').style.display = 'block';
                        }
                    }
                    else {
                            document.getElementById(fld + '_dOtl').style.display = 'none';
                    }
                    mytype = 'ind';
                }
                else {
                    document.getElementById(fld + '_EFN').value = '';
                    document.getElementById(fld + '_ELN').value = '';
                    document.getElementById(fld + '_ELN_old').value = '';
                    document.getElementById(fld + '_EON').value = myObject.names[0].cn;
                    document.getElementById(fld + '_EON_old').value = myObject.names[0].cn;
                }
                if (ids[0] != '') {
                    mytype = 'con'
                }
                document.getElementById(fld + '_ES1').value = myObject.names[0].s1;
                document.getElementById(fld + '_ES2').value = myObject.names[0].s2;
                document.getElementById(fld + '_ETN').value = myObject.names[0].tn;
                document.getElementById(fld + '_EST').value = myObject.names[0].st;
                document.getElementById(fld + '_EZP').value = myObject.names[0].zp;
                document.getElementById(fld + '_ECN').value = myObject.names[0].ct;
                document.getElementById(fld + '_EP1').value = myObject.names[0].p1;
                document.getElementById(fld + '_EP2').value = myObject.names[0].p2;
                document.getElementById(fld + '_EP3').value = myObject.names[0].p3;
                document.getElementById(fld + '_EP4').value = myObject.names[0].p4;
                document.getElementById(fld + '_EF1').value = myObject.names[0].f1;
                document.getElementById(fld + '_EF2').value = myObject.names[0].f2;
                document.getElementById(fld + '_EF3').value = myObject.names[0].f3;
                document.getElementById(fld + '_EF4').value = myObject.names[0].f4;
                document.getElementById(fld + '_EEM').value = myObject.names[0].em;
                document.getElementById(fld + '_EWB').value = myObject.names[0].wb;
                document.getElementById(fld + '_EDS').value = '5';
                LUDisplayEntry(fld, 'existing', mytype);
                Page_ClientValidate()
            }
            else {
                alert('Sorry, we were unable to find this entry due to an unforeseen problem.');
                document.getElementById(fld + '_EDS').value = '2';
            }


        }
    };
}        

       
function AddLUEntry(fld) {
    ClearLUEntry(fld)
    Page_ClientValidate()
    LUDisplayEntry(fld, 'new', 'org')
	if (document.getElementById(fld + '_ET') != null) {
	    document.getElementById(fld + '_ET0').checked = true;  
	}
    document.getElementById(fld + '_EDS').value = '3';

}

function CancelLUEdit(fld) {
    ClearLUEntry(fld);
    document.getElementById(fld + '_EDS').value = '1';
    if (document.getElementById(fld + '_SLN').value != '' || document.getElementById(fld + '_SFN').value != '' || document.getElementById(fld + '_STN').value != '' || document.getElementById(fld + '_SST').value != '' || document.getElementById(fld + '_SDS').value != '' || document.getElementById(fld + '_SIN').value != '') {
        GetLUEntryList(fld)
    }
    else {
        LUDisplaySearch(fld)
    }
}

function TglLUEntry(fld) {
    document.getElementById(fld + '_EFN').value = '';
    document.getElementById(fld + '_ELN').value = '';
    document.getElementById(fld + '_EON').value = '';
    document.getElementById(fld + '_ETL').value = '';
    var rb = document.getElementById(fld + '_ET0')
    if (rb.checked == true) {
        LUDisplayEntry(fld, 'new', 'org')
        document.getElementById(fld + '_EDS').value = '3';
    }
    else {
        LUDisplayEntry(fld, 'new', 'ind')
        document.getElementById(fld + '_EDS').value = '4';
    }
}

function OnDivScroll(fld) {
    var lsMch = document.getElementById(fld + '_lsMch');
    if (lsMch.options.length > 8)
    {
        lsMch.size=lsMch.options.length;
    }
    else
    {
        lsMch.size=8;
    }
}

function OnSelectFocus(fld) {
    if (document.getElementById(fld + '_dMs').scrollLeft != 0)
    {
        document.getElementById(fld + '_dMs').scrollLeft = 0;
    }
    var top = document.getElementById(fld + '_dMs').scrollTop;
    var lsMch = document.getElementById(fld + '_lsMch');
    SelectPosition = lsMch.SelectedIndex;
    if(lsMch.options.length > 8)
    {
        lsMch.focus();
        //lsMch.size=8;
        document.getElementById(fld + '_dMs').scrollTop = top;
    }
}   
function OnSelectChange(fld) {    var lsMch = document.getElementById(fld + '_lsMch');
    if(lsMch.options.length > 8)
    {
        if (lsMch.selectedIndex > SelectPosition) {
            document.getElementById(fld + '_dMs').scrollTop = document.getElementById(fld + '_dMs').scrollTop + 16;
        }
        else {
            document.getElementById(fld + '_dMs').scrollTop = document.getElementById(fld + '_dMs').scrollTop - 16;        
        }
        SelectPosition = lsMch.selectedIndex;
    }
}function TglSO(fld) {    if (document.getElementById(fld + '_MO').checked == true) {        document.getElementById(fld + '_dvMO').style.display = 'block';    }    else {        document.getElementById(fld + '_dvMO').style.display = 'none';    }}function SetLUDisplay() {
    var flds = document.getElementsByTagName("input")
    for (var i=0; i < flds.length; i++) {
        if (flds[i].type == 'hidden') {
            if (flds[i].id.search('_EDS') != -1) {
                var fld = flds[i].id.replace('_EDS','');
                SetLUCountry(fld);

                var dst = flds[i].value;
                TglSO(fld);

                var EID = document.getElementById(fld + '_EID').value
                var EFN = document.getElementById(fld + '_EFN').value
                var ELN = document.getElementById(fld + '_ELN').value
                var ETL = document.getElementById(fld + '_ETL').value
                var EON = document.getElementById(fld + '_EON').value
                var ES1 = document.getElementById(fld + '_ES1').value
                var ES2 = document.getElementById(fld + '_ES2').value
                var ETN = document.getElementById(fld + '_ETN').value
                var EST = document.getElementById(fld + '_EST').value
                var ECN = document.getElementById(fld + '_ECN').value
                var EZP = document.getElementById(fld + '_EZP').value
                var EP1 = document.getElementById(fld + '_EP1').value
                var EP2 = document.getElementById(fld + '_EP2').value
                var EP3 = document.getElementById(fld + '_EP3').value
                var EP4 = document.getElementById(fld + '_EP4').value
                var EF1 = document.getElementById(fld + '_EF1').value
                var EF2 = document.getElementById(fld + '_EF2').value
                var EF3 = document.getElementById(fld + '_EF3').value
                var EF4 = document.getElementById(fld + '_EF4').value
                var EEM = document.getElementById(fld + '_EEM').value
                var EWB = document.getElementById(fld + '_EWB').value
                var EDS = document.getElementById(fld + '_EDS').value

//                msg = 'EID: ' + EID + '\n'
//                msg = msg + 'EFN: ' + EFN + '\n'
//                msg = msg + 'ELN: ' + ELN + '\n'
//                msg = msg + 'ETL: ' + ETL + '\n'
//                msg = msg + 'EON: ' + EON + '\n'
//                msg = msg + 'ES1: ' + ES1 + '\n'
//                msg = msg + 'ES2: ' + ES2 + '\n'
//                msg = msg + 'ETN: ' + ETN + '\n'
//                msg = msg + 'EST: ' + EST + '\n'
//                msg = msg + 'ECN: ' + ECN + '\n'
//                msg = msg + 'EZP: ' + EZP + '\n'
//                msg = msg + 'EP1: ' + EP1 + '\n'
//                msg = msg + 'EP2: ' + EP2 + '\n'
//                msg = msg + 'EP3: ' + EP3 + '\n'
//                msg = msg + 'EP4: ' + EP4 + '\n'
//                msg = msg + 'EF1: ' + EF1 + '\n'
//                msg = msg + 'EF2: ' + EF2 + '\n'
//                msg = msg + 'EF3: ' + EF3 + '\n'
//                msg = msg + 'EF4: ' + EF4 + '\n'
//                msg = msg + 'EEM: ' + EEM + '\n'
//                msg = msg + 'EWB: ' + EWB + '\n'
//                msg = msg + 'EDS: ' + EDS + '\n'
//                alert(msg);

                if (EFN == '' && ELN == '' && ETL=='' && EON=='' && ES1=='' && ES2=='' && ETN=='' && EST=='^^' && EZP==''&& EP1=='' && EP2=='' && EP3=='' && EP4=='' && EF1=='' && EF2=='' && EF3=='' && EF4=='' && EEM=='' && EWB=='') {
                    if (ECN='^^' ) {
                        dst = '1';
                    }
                }
                else {
                    if (EON != '') {
                        dst = '3'
                        if (EFN != '' || ELN != '') {
                            dst = '4'
                        }
                    }
                    else {
                        dst = '2'
                    }
                }

                switch (dst) {
                    case '1':
                    //Initial Search Screen
                        LUDisplaySearch(fld)
                        flds[i].value = '1'
                        break;
                    case '2':
                    // existing / ind
                        LUDisplayEntry(fld, 'existing', 'ind')
                        flds[i].value = '2'
                        break;
                    case '3':
                    // existing / org
                        LUDisplayEntry(fld, 'existing', 'org')
                        flds[i].value = '3'
                        break;
                        
                    case '4':
                    // existing / con
                        LUDisplayEntry(fld, 'existing', 'con')
                        flds[i].value = '4'
                        break;
                }

//                switch (dst) {
//                    case '1':
//                        //Initial Search Screen
//                        LUDisplaySearch(fld)
//                        flds[i].value = '1'
//                        break;
//                    case '2':
//                        GetLUEntryList(fld)
//                        flds[i].value = '2'
//                        break;
//                    case '3':
//                        GetLUEntryList(fld)
//                        LUDisplayEntry(fld, 'new', 'org')
//                        document.getElementById(fld + '_ET0').checked = true;
//                        flds[i].value = '3'
//                        break;
//                    case '4':
//                        LUDisplayEntry(fld, 'new', 'ind')
//                        document.getElementById(fld + '_ET1').checked = true;
//                        flds[i].value = '4'
//                        break;
//                    case '5':
//                        //GetLUEntryList(fld)
//                        var myid = document.getElementById(fld + '_EID').value;
//                        var ids = myid.split('|');
//                        if (ids[0] == '' && document.getElementById(fld + '_EON').value != '') {
//                            LUDisplayEntry(fld, 'existing', 'org')
//                        }
//                        else {
//                            if (ids[0] != '') {
//                                LUDisplayEntry(fld, 'existing', 'con')
//                            }
//                            else {
//                                LUDisplayEntry(fld, 'existing', 'ind')
//                            }
//                        }
//                        flds[i].value = '5'
//                        break;
//                }
            }
        }
    }
}
    function SetLUCountry(fldid) {
        var curid = '#' + fldid + '_EST';
        var lustate = $(curid);
        var curid = '#' + fldid + '_dEST';
        var divstate = $(curid);
        var curid = '#' + fldid + '_ECN';
        var lucountry = $(curid);
        var curid = '#' + fldid + '_EP1';
        var luphone = $(curid);
        var curid = '#' + fldid + '_EF1';
        var lufax = $(curid);
        var curid = '#' + fldid + '_EPOP';
        var lupop = $(curid);
        var curid = '#' + fldid + '_EPCP';
        var lupcp = $(curid);
        var curid = '#' + fldid + '_EFOP';
        var lufop = $(curid);
        var curid = '#' + fldid + '_EFCP';
        var lufcp = $(curid);
        var curid = '#' + fldid + '_vEZP';
        var valzip = $(curid)
        var curid = 'v' + fldid + '_vEP1';
        var valphone = document.getElementById(curid);
        var curid = 'v' + fldid + '_vEF1';
        var valfax = document.getElementById(curid);
        
        if (lucountry.val() == '^^' || lucountry.val() == 'United States' || lucountry.val() == 'Canada' || lucountry.val() == 'Mexico' || lucountry.val() == '') {
            divstate.show();
            lupop.show();
            lupcp.show();
            lufop.show();
            lufcp.show();
            luphone.width(50);
            lufax.width(50);
        }
        else {
            valzip.enabled = false;
            ValidatorEnable(valphone, false);
            ValidatorEnable(valfax, false);
        
            divstate.hide();
            lupop.hide();
            lupcp.hide();
            lufop.hide();
            lufcp.hide();
            luphone.width(400);
            lufax.width(400);
        }
    }
// End lookup form field Functions //function ValidatePostalCode(src, args) {
    args.IsValid = false;
    var entry = args.Value;
    var anum=/\d\d\d\d\d/
    if (anum.test(entry) && entry.length == 5) { //number
        args.IsValid = true;
    }
    else {
        var pos = entry.search('-');
        if (pos != -1 && entry.length == 10) {
            var first = entry.slice(0, pos)
            var second = entry.slice(pos + 1)
            var bnum = /\d\d\d\d/
            if (first.length == 5 && anum.test(first) && second.length == 4 && bnum.test(second)) {
                args.IsValid = true;
            }
        }
        else {
            var cn;
            var st;
            var callfield = src.controltovalidate;
            if (callfield == 'tnk_Zip') {
                var cn = 'tnk_Country';
                var st = 'tnk_State';
            }
            else if (callfield == 'tnk_PostZip') {
                var cn = 'tnk_PostCountry';
                var st = 'tnk_PostState';
            }
            else {
                var pos = callfield.lastIndexOf('_');
                var fldkrnl = callfield.slice(0, pos)
                var cn = fldkrnl + '_ECN';
                var st = fldkrnl + '_EST';
            }
            if (document.getElementById(cn).value != '' && CheckUSState(document.getElementById(st).value) == false) {
                args.IsValid = true;
            }
        }
    }            
}

function ValidateLUPhone(src, args) {
    args.IsValid = false;
    var entry = args.Value;
    var anum=/\d\d\d/
    if (anum.test(entry) && entry.length == 3) {
        args.IsValid = true;
    }
}

function ValidateLUPostalCode(src, args) {
    args.IsValid = false;
    var entry = args.Value;
    var anum=/\d\d\d\d\d/
    if (anum.test(entry) && entry.length == 5) { //number
        args.IsValid = true;
    }
    else {
        var pos = entry.search('-');
        if (pos != -1 && entry.length == 10) {
            var first = entry.slice(0, pos)
            var second = entry.slice(pos + 1)
            var bnum = /\d\d\d\d/
            if (first.length == 5 && anum.test(first) && second.length == 4 && bnum.test(second)) {
                args.IsValid = true;
            }
        }
        else {
            var cn;
            var st;
            var callfield = src.controltovalidate;
            if (callfield == 'tnk_Zip') {
                var cn = 'tnk_Country';
                var st = 'tnk_State';
            }
            else if (callfield == 'tnk_PostZip') {
                var cn = 'tnk_PostCountry';
                var st = 'tnk_PostState';
            }
            else {
                var pos = callfield.lastIndexOf('_');
                var fldkrnl = callfield.slice(0, pos)
                var cn = fldkrnl + '_ECN';
                var st = fldkrnl + '_EST';
            }
            if (document.getElementById(cn).value != '' && CheckUSState(document.getElementById(st).value) == false) {
                args.IsValid = true;
            }
        }
    }            
}

function LimitChars(ctl,max) {
    var maxlength = new Number(max);
    var ctr = $('#' + ctl.id + 'Counter');
    if ($(ctr).length) { ctr.html(ctl.value.length + ' characters') };
    if (ctl.value.length > maxlength) {
        var chrovr = Number(ctl.value.length) - maxlength;
        alert('You have reached the maximum number of characters allowed.  The text you have entered is ' + chrovr + ' characters more than the acceptable limit of ' + max + ' characters.');
        ctl.value = ctl.value.substring(0,maxlength);
        if ($(ctr).length) { ctr.html(ctl.value.length + ' characters') };
    }    
}

function CheckUSState(state) {
    if (state == '') {
        return false;
    }
    else {
        var term = '~' + state.toUpperCase() + '~'
        var statelist = '~AL~AK~AS~AZ~AR~CA~CO~CT~DE~DC~FM~FL~GA~GU~HI~ID~IL~IN~IA~KS~KY~LA~ME~MH~MD~MA~MI~MN~MS~MO~MT~NE~NV~NH~NJ~NM~NY~NC~ND~MP~OH~OK~OR~PW~PA~PR~RI~SC~SD~TN~TX~UT~VT~VI~VA~WA~WV~WI~WY~'
        var pos = statelist.search(term);
        if (pos != -1) {
            return true;
        }
        else {
            return false;
        }
    }     
}
function ValidateUSState(src, args) {
    args.IsValid = false;
    var entry = args.Value;
    var cn;
    var callfield = src.controltovalidate;
    if (callfield == 'tnk_State') {
        var cn = 'tnk_Country';
    }
    else if (callfield == 'tnk_PostState') {
        var cn = 'tnk_PostCountry';
    }
    else {
        var pos = callfield.lastIndexOf('_');
        var fldkrnl = callfield.slice(0, pos);
        var cn = fldkrnl + '_ECN';
    }
    
    var cnval = document.getElementById(cn).value;
    if (cnval == '' && CheckUSState(entry) == true) {
        args.IsValid = true;
    }
    else if (cnval != '') {
        var list = '~US~U.S.~USA~U.S.A.~US of A~U.S. of A.~USofA~U.S.ofA.~United States~United States of America~';
        var term = '~' + cnval.toUpperCase() + '~'
        var pos = list.search(term);
        if (pos != -1) {
            if (CheckUSState(entry) == true) {
                args.IsValid = true;
            }
        }
        else {
            args.IsValid = true;
        }
    }
}
//-->