var isEcoRegion = false; var isState = false; var isMostRecent = true; var isKeyword = false; var ecoNums = new Array('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23', '24','25','26','27','28','29','30','31','32','33','34','35','36','37','38','39','40','41','42','43','44', '45','46','47','48','49','50','51','52','53','54','55','56','57','58','59','60','61','62','63','64','65', '66','67','68','69','70','71','72','73','74','75','76','77','78','79','80','81','82','83','84','101','102', '103','104','105','106','107','108','109','110','111','112','113','114','115','116','117','118','119','120'); var ecoRegions = new Array('1. Coast Range','2. Puget Lowland','3. Willamette Valley','4. Cascades','5. Sierra Nevada','6. Southern and Central California Chaparral and Oak Woodlands', '7. Central California Valley','8. Southern California Mountains','9. Eastern Cascades Slopes and Foothills','10. Columbia Plateau','11. Blue Mountains', '12. Snake River Plain','13. Central Basin and Range','14. Mojave Basin and Range','15. Northern Rockies','16. Idaho Batholith','17. Middle Rockies', '18. Wyoming Basin','19. Wasatch and Uinta Mountains','20. Colorado Plateaus','21. Southern Rockies','22. Arizona/New Mexico Plateau','23. Arizona/New Mexico Mountains', '24. Chihuahuan Deserts','25. Western High Plains','26. Southwestern Tablelands','27. Central Great Plains','28. Flint Hills','29. Central Oklahoma/Texas Plains', '30. Edwards Plateau','31. Southern Texas Plains','32. Texas Blackland Prairies','33. East Central Texas Plains','34. Western Gulf Coastal Plain', '35. South Central Plains','36. Ouachita Mountains','37. Arkansas Valley','38. Boston Mountains','39. Ozark Highlands','40. Central Irregular Plains', '41. Canadian Rockies','42. Northwestern Glaciated Plains','43. Northwestern Great Plains','44. Nebraska Sand Hills','45. Piedmont','46. Northern Glaciated Plains', '47. Western Corn Belt Plains','48. Lake Agassiz Plain','49. Northern Minnesota Wetlands','50. Northern Lakes and Forests','51. North Central Hardwood Forests', '52. Driftless Area','53. Southeastern Wisconsin Till Plains','54. Central Corn Belt Plains','55. Eastern Corn Belt Plains','56. Southern Michigan/Northern Indiana Drift Plains', '57. Huron/Erie Lake Plains','58. Northeastern Highlands','59. Northeastern Coastal Zone','60. Northern Appalachian Plateau and Uplands','61. Erie Drift Plain', '62. North Central Appalachians','63. Middle Atlantic Coastal Plain','64. Northern Piedmont','65. Southeastern Plains','66. Blue Ridge','67. Ridge and Valley', '68. Southwestern Appalachians','69. Central Appalachians','70. Western Allegheny Plateau','71. Interior Plateau','72. Interior River Valleys and Hills', '73. Mississippi Alluvial Plain','74. Mississippi Valley Loess Plains','75. Southern Coastal Plain','76. Southern Florida Coastal Plain','77. North Cascades', '78. Klamath Mountains','79. Madrean Archipelago','80. Northern Basin and Range','81. Sonoran Basin and Range','82. Laurentian Plains and Hills','83. Eastern Great Lakes and Hudson Lowlands', '84. Atlantic Coastal Pine Barrens','101. Arctic Coastal Plain','102. Arctic Foothills','103. Brooks Range','104. Interior Forested Lowlands','105. Interior Highlands', '106. Interior Bottomlands','107. Yukon Flats','108. Ogilvie Mountains','109. Subarctic Coastal Plains','110. Seward Peninsula','111. Ahklun and Kilbuck Mountains','112. Bristol Bay-Nushagak Lowlands', '113. Alaska Peninsula Mountains','114. Aleutian Islands', '115. Cook Inlet','116. Alaska Range','117. Copper Plateau','118. Wrangell Mountains','119. Pacific Coastal Mountains', '120. Coastal Western Hemlock-Sitka Spruce Forests'); var states = new Array('Alabama','Alaska','Arizona','Arkansas','California','Colorado','Connecticut','Delaware','District of Columbia', 'Florida','Georgia','Hawaii','Idaho','Illinois','Indiana','Iowa','Kansas','Kentucky','Louisiana','Maine','Maryland', 'Massachusetts','Michigan','Minnesota','Mississippi','Missouri','Montana','Nebraska','Nevada','New Hampshire','New Jersey', 'New Mexico','New York','North Carolina','North Dakota','Ohio','Oklahoma','Oregon','Pennsylvania','Rhode Island', 'South Carolina','South Dakota','Tennessee','Texas','Utah','Vermont','Virginia','Washington','West Virginia', 'Wisconsin','Wyoming'); function ChangeSearch() { type = document.getElementById('type'); if (type.value == 'GetRecent' || type.value == '') { if (isMostRecent == false) { searchTd = document.getElementById('search'); label = document.getElementById('forlabel'); searchBox = document.getElementById('searchBox'); ap = document.getElementById('para'); if (label) label.removeChild(ap); if (searchBox) searchTd.removeChild(searchBox); isMostRecent = true; isState = false; isEcoRegion = false; isKeyword = false; } } else { if (isMostRecent == true) { label = document.getElementById('forlabel') p = document.createElement('p'); p.id = 'para'; newlabel = document.createTextNode('For:'); bold = document.createElement('strong'); bold.appendChild(newlabel); p.appendChild(bold); label.appendChild(p); isMostRecent = false; } if (type.value == 'Eco-Region' && isEcoRegion != true) { searchTd = document.getElementById('search'); searchBox = document.getElementById('searchBox'); if (searchBox) searchTd.removeChild(searchBox); isEcoRegion = true; isState = false; isKeyword = false; theSpan = document.createElement('span'); theSpan.id = 'searchBox'; ecoSelect = document.createElement('select'); ecoSelect.name = 'searchBox'; ecoSelect.id = 'realSearchBox'; ecoSelect.multiple = 'true'; ecoSelect.size = 4; linebreak = document.createElement('br'); anotherlinebreak = document.createElement('br'); ecoMap = document.createElement('a'); ecoMap.href="Eco-Regions.pdf"; ecoMap.target="new"; ecoText = document.createTextNode('View Eco-Region Map'); ecoMap.appendChild(ecoText); searchTd.appendChild(theSpan); theSpan.appendChild(ecoSelect); theSpan.appendChild(linebreak); theSpan.appendChild(anotherlinebreak); theSpan.appendChild(ecoMap); for (var i=0; i < 104; i++) { ecoSelect[i] = new Option(ecoRegions[i], ecoNums[i]); } } else if (type.value == 'State' && isState != true) { searchTd = document.getElementById('search'); searchBox = document.getElementById('searchBox'); if (searchBox) searchTd.removeChild(searchBox); isState = true; isEcoRegion = false; isKeyword = false; stateSelect = document.createElement('select'); stateSelect.name = 'searchBox'; stateSelect.id = 'searchBox'; stateSelect.multiple = 'true'; stateSelect.size = 4; searchTd.appendChild(stateSelect); for (i=0; i < 49; i++) { stateSelect[i] = new Option(states[i], states[i]); } } else if (type.value == 'Keywords' && isKeyword != true) { searchTd = document.getElementById('search'); searchBox = document.getElementById('searchBox'); if (searchBox) searchTd.removeChild(searchBox); isKeyword = true; isEcoRegion = false; isState = false; keywordSelect = document.createElement('select'); keywordSelect.name = 'searchBox'; keywordSelect.id = 'searchBox'; keywordSelect.multiple = 'true'; keywordSelect.size = 4; searchTd.appendChild(keywordSelect); var keywordList = document.getElementById('keywordList').value; var keywordArray = keywordList.split(',').sort(sortIgnoreCase); var duplicateArray = new Array(keywordArray.length); for (i =0; i < duplicateArray.length; i++) duplicateArray[i] = 0; for (i=0; i < keywordArray.length-1; i++) for (j=i+1; j < keywordArray.length; j++) { if (duplicateArray[i] == 1) i++; else if (keywordArray[i].toLowerCase() == keywordArray[j].toLowerCase()) duplicateArray[j] = 1; } var keywordNum = 0; for (i=0; i < keywordArray.length; i++) if (duplicateArray[i] != 1) { keyword = keywordArray[i]; keyword = keyword.charAt(0).toUpperCase() + keyword.substring(1); keywordSelect[keywordNum] = new Option(keyword, keywordArray[i]); keywordNum++; } } else { searchTd = document.getElementById('search'); searchBox = document.getElementById('searchBox'); if (searchBox) searchTd.removeChild(searchBox); searchBox = document.createElement('input'); searchBox.type = 'text'; searchBox.name = 'searchBox'; searchBox.id = 'searchBox'; searchBox.value = ''; searchTd.appendChild(searchBox); isEcoRegion = false; isState = false; isKeyword = false; } } } function sortIgnoreCase(word1, word2) { if (word1.toLowerCase() < word2.toLowerCase()) retVal=-1; else if (word1.toLowerCase() > word2.toLowerCase()) retVal=1; else retVal=0; return retVal; }