﻿var tsarp_currentMap = 1;
var tsarp_prevMap = -1;
var showMapViewFlag = 0;
var hideMapViewFlag = 0;
var tsarp_maps = ["tsarp_hybrid","tsarp_map","tsarp_aerial"];
var tsarp_mapTempLayers = ["","",""];
var tsarp_currentScale = 0;
var tsarp_prevScale = 0;
var newLoad = false;
var reloadTimer = "";

// response function to close out browser ... request sent to server by CloseOut()
function CloseOutResponse(response, context) {
    window.close(); 
    // if user selects Cancel in close dialog, send to close page 
    document.location = response; 
}

function newImage(arg) {
    if (document.images) {
	    rslt = new Image();
	    rslt.src = arg;
	    return rslt;
    }
}

function changeImages() {
    if (document.images && (preloadFlag == true)) {
	    for (var i=0; i<changeImages.arguments.length; i+=2) {
		    document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
	    }
    }
}

var preloadFlag = false;

function preloadImages() {

    if (document.images) {
	
	    rollovers_05_over = newImage("images/rollovers/rollovers_05-over.jpg");
	    rollovers_06_over = newImage("images/rollovers/rollovers_06-over.jpg");
	    rollovers_09_over = newImage("images/rollovers_09-over.jpg");
	    rollovers_11_down = newImage("images/rollovers/rollovers_11-down.jpg");

	    leftnav_tsarp_over = newImage("images/rollovers/leftnav_tsarp_over.gif");	
	    leftnav_fema_over = newImage("images/rollovers/leftnav_fema_over.gif");
	    leftnav_hcfcd_over = newImage("images/rollovers/leftnav_hcfcd_over.gif");	
	    leftnav_benchmark_over = newImage("images/rollovers/leftnav_benchmark_over.gif");	
	    leftnav_floodplains_exp_over = newImage("images/rollovers/leftnav_floodplains_exp_over.gif");	
	    leftnav_how_made_over = newImage("images/rollovers/leftnav_how_made_over.gif");	
	    leftnav_types_fp_over = newImage("images/rollovers/leftnav_types_fp_over.gif");	
		
	    compass_sel = newImage("images/compass_sel.gif");	
			
	    pan_rollover = newImage("images/pan_rollover.gif");
	    pan_rollover_sel = newImage("images/pan_rollover_sel.gif");
	    preloadFlag = true;
	
    }
}

function openFlash1() {
    window.open("http://www.tsarp.org/flash/10Yr_100Yr_500Yr.swf","flashWin","width=600,height=400,scrollbars=no,resizable=no");
    }
	
function openFlash2() {
    window.open("http://www.tsarp.org/flash/HCs_4_TypesofFloodplains.swf","flashWin","width=640,height=400,scrollbars=no,resizable=no");
    }

function clickFunction (type) {
    switch(type) {
    case "pdf":
	    createPdf();
	    break;
    // TSARP - displays glossary
    case "whatIsOnMap":
	    showTSARPGlossary();
	    break;
    // TSARP - displays help doc
    case "needHelp":
	    showTSARPHelp();
	    break;
    default:
	    alert(type);
    }
}
// Display TSARP glossary in new window
function showTSARPGlossary() {
    var Win1 = open("glossary.html","GlossaryWindow","width=400,height=400,scrollbars=yes,resizable=yes");
}

// Display TSARP help in new window
function showTSARPHelp() {
    var Win1 = open("help.html","HelpWindow","width=400,height=400,scrollbars=yes,resizable=yes");
}
function createPdf() {
    alert("Create PDF function not implemented");
}

var isInit = false;

function initTsarpMap(){
    //alert("Initialization Mode!");
    isInit = true;
    //var fpDocImg1 = document.getElementById("TaskManager1_FindAddressTask1_DockButton");
    //if(fpDocImg1) fpDocImg1.outerHTML = "";
    //var fpAddLab = document.getElementById("TaskManager1_FindAddressTask1_Label1");
    //if(fpAddLab) fpAddLab.innerHTML = "ZIP Code";
    //var fpDocImg2 = document.getElementById("TaskManager1_QueryAttributesTask1_DockButton");
    //if(fpDocImg2) fpDocImg2.outerHTML = "";
    //var fpDocImg3 = document.getElementById("TaskManager1_QueryAttributesTask2_DockButton");
    //if(fpDocImg3) fpDocImg3.outerHTML = "";
    
    
    preloadImages();
    window.onresize = setObjSize;
    setObjSize();
    
          
}

function setObjSize() {
     var theWinWidth = getWinWidth();
     var thwWinHeight = getWinHeight();
     var menuPanel = document.getElementById("menu_panel");
     menuPanel.style.top = "70px";
     menuPanel.style.left = (theWinWidth - menuPanel.offsetWidth - 164) + "px";     
     var mTable = document.getElementById("mainTable");
     mTable.width= theWinWidth;
     mTable.height = thwWinHeight;
     var lowTR = document.getElementById("trLow");
     lowTR.height = mTable.height - 60;
     var tblLow =  document.getElementById("tblLow");
     tblLow.height = lowTR.height;
     var mapTR = document.getElementById("trMap");
     mapTR.height = tblLow.height - 80;
     var mapTBL = document.getElementById("tblMap");
     mapTBL.height = mapTR.height;
     var mapPanTBL = document.getElementById("tblMapPan");
     mapPanTBL.height = mapTBL.height;
     var mapDiv = document.getElementById("Map1");
     mapDiv.style.height = (mapPanTBL.height - 115) + "px";
     var mapCtrlDiv = document.getElementById("MapControlDiv_Map1");
     mapCtrlDiv.style.height = mapDiv.style.height;
     var lgndDiv = document.getElementById("legendDiv");
     lgndDiv.style.height = mapPanTBL.height + "px";
     if (512 < (mTable.width - 131 - 164)) {
        mapDiv.style.width = (mTable.width - 131 - 164) + "px";
        mapCtrlDiv.style.width = mapDiv.style.width;
     }
     var webMapAppScaleBar = document.getElementById("ScaleBar1");
     var sbWidth = webMapAppScaleBar.clientWidth;
     var sbHeight = webMapAppScaleBar.clientHeight;
     webMapAppScaleBar.style.left = (theWinWidth - sbWidth - 164 - 10) + "px";
     webMapAppScaleBar.style.top = (thwWinHeight - sbHeight - 80 - 115) + "px";
     if (isInit) {
        if (newLoad) {
          //alert("Newload - Object Initialized. ");
          map.zoomToFullExtent();
        }
        checkMenuButtons(true);
     } else {
        //alert("Not a Newload!!! - Object Initialized. ");        
        map.resize(parseInt(mapDiv.style.width),parseInt(mapDiv.style.height),true);
        
     }
     isInit = false;
}  

//TSARP custom Tasks
function ShowFloatingPanel(taskFP) {
    if (taskFP == 'TaskManager1_FindAddressTask1') {
        popAddressSearchDiv();
    } else {
        showFloatingPanel(taskFP); 
    }
}

function showMenuPanel(scale) {
    tsarp_mapTempLayers = ["","",""];
    if (showMapViewFlag == 0) {
        if (tsarp_currentMap !=1) {
            tsarp_prevMap = tsarp_currentMap;
            tsarp_currentMap = 1;
         }
        checkMenuButtons(false);
    }
    hideMapViewFlag = 0;
    showMapViewFlag++;
}

function hideMenuPanel(scale) {
    if (hideMapViewFlag == 0 ) {
        tsarp_prevMap = tsarp_currentMap;
        var rc = map.ResourceCollection;
        var preRscIndex = rc.getPosition(tsarp_maps[tsarp_prevMap]);
        if (tsarp_prevMap != 1 && map.ResourceCollection[preRscIndex].visible) {
            map.ResourceCollection[preRscIndex].hide();
        }
        tsarp_currentMap = 1;
        var curRscIndex = rc.getPosition(tsarp_maps[tsarp_currentMap]);
        if (!map.ResourceCollection[curRscIndex].visible) {
            map.ResourceCollection[curRscIndex].show(); 
        }
        checkMenuButtons(true);
    }
    showMapViewFlag = 0;
    hideMapViewFlag++;
}

function selectMapView(rcIdx) {
    tsarp_prevMap = tsarp_currentMap;
    var rc = map.ResourceCollection;
    var prevRscIndex = rc.getPosition(tsarp_maps[tsarp_prevMap]);
    if (map.ResourceCollection[prevRscIndex].visible) {
        var thePreMapDiv = document.getElementById(map.ResourceCollection[prevRscIndex].divId);
        tsarp_mapTempLayers[tsarp_prevMap] = thePreMapDiv.innerHTML;
        thePreMapDiv.innerHTML = "";
        map.ResourceCollection[prevRscIndex].hide();
    }
    tsarp_currentMap = rcIdx;
    var currRscIndex = rc.getPosition(tsarp_maps[tsarp_currentMap]);
    if (!map.ResourceCollection[currRscIndex].visible) {
        var theCurMapDiv = document.getElementById(map.ResourceCollection[currRscIndex].divId);
        if (tsarp_mapTempLayers[tsarp_currentMap] != "") theCurMapDiv.innerHTML = tsarp_mapTempLayers[tsarp_currentMap];
        map.ResourceCollection[currRscIndex].show();
    }
    checkMenuButtons(false);
}
function checkMenuButtons(showBase) {
    var menuPanel = document.getElementById("menu_panel");
    if (menuPanel.style.visibility != "visible") menuPanel.style.visibility = "visible";
    var mpBs = ["btn_showHybrid","btn_showMap","btn_showAerial"];
    if (showBase) {
        for (var b=0;b<mpBs.length;b++){
            var bObj = document.getElementById(mpBs[b]);
            if (b == 1) {
                bObj.disabled  = "disabled";
                bObj.style.backgroundColor = "blue";
                bObj.style.color = "white";
            } else {
               bObj.disabled  = "disabled";
               bObj.style.backgroundColor = "";
               bObj.style.color = "black";
            }
        }
    } else {
        for (var b=0;b<mpBs.length;b++){
            var bObj = document.getElementById(mpBs[b]);
            if (b == tsarp_currentMap) {
                bObj.disabled  = "disabled";
                bObj.style.backgroundColor = "blue";
                bObj.style.color = "white";
            } else {
               bObj.disabled  = "";
               bObj.style.backgroundColor = "";
               bObj.style.color = "black";
            }
        }
    }
 }

function doAddressSearch() {
    // Add search by address function
    var addressField1 = document.getElementById("addressField");
    var zipField1 = document.getElementById("zipField");
    if (addressField1.value != "" && zipField1.value !="") { //(zipField1.value !="")
        tsarpSearchAddress(addressField1.value,zipField1.value);
    } else {
        alert("Please enter a valid address!");//alert("ZIP code is required!"); //
    }
}

function popAddressSearchDiv() {
    var theDiv = document.getElementById("Query_Panel");
    var theDivHTML = '<table cellspacing="0" border="0"><tr bgcolor="white"><td colspan="6"><img src="images/spacer.gif" height=7 width=100% /></td></tr><tr><td width="7">';
    theDivHTML += '<img src="images/spacer.gif" width="7" height="1" alt="" border="0"></td><td bgcolor="white" colspan="5">';
    theDivHTML += '<span class="copy">Enter your address below to view the floodplains on the map.</span></td></tr><tr><td width="7">';
    theDivHTML += '<img src="images/spacer.gif" width="7" height="1" alt="" border="0"></td><td bgcolor="#E7E7E7" nowrap>';
    theDivHTML += '&nbsp;<span class="copy"><b>Street Address:</b></span></td><td bgcolor="#E7E7E7">';
    theDivHTML += '<input type="Text" id="addressField" name="addressField" size="25"></td>';
    theDivHTML += '<td bgcolor="#E7E7E7" nowrap>&nbsp;<span class="copy"><b>Zip Code:</b></span></td<td bgcolor="#E7E7E7">';
    theDivHTML += '<input type="Text" id="zipField" name="zipField" size="10"></td>';
    theDivHTML += '<td bgcolor="#E7E7E7"><img src="images/spacer.gif" width="3" height="1" alt="" border="0">';
    theDivHTML += '<input id="btnSearchAddr" type="button" value="Go" onmousedown="doAddressSearch()" /></td>';
    theDivHTML += '</tr><tr><td width="7"><img src="images/spacer.gif" width="7" height="1" alt="" border="0"></td><td></td></tr><tr><td width="7">';
    theDivHTML += '<img src="images/spacer.gif" width="7" height="1" alt="" border="0"></td><td></td></tr><tr><td width="7">';
    theDivHTML += '<img src="images/spacer.gif" width="7" height="1" alt="" border="0"></td><td bgcolor="white" colspan="5">';
    theDivHTML += '<span class="copySmall">All Elevation Data Based on NAVD 1988 2001 Adjustment.</span></td></tr>';
    theDivHTML += '<tr><td width="7"><img src="images/spacer.gif" width="7" height="1" alt="" border="0"></td>';
    theDivHTML += '<td bgcolor="white" colspan="5"><span class="copySmall">';
    theDivHTML += 'Note: Hybrid and Aerial views are only available at top 3 zoom levels.</span></td></tr></table>';
    theDiv.innerHTML = theDivHTML;
}


