 /**\ \**/ /**\ \**/ /**\ \**/
/*+=========================+*/
/*| Prospect Portal Scripts |*/
/*+=========================+*/
 /**\ \**/ /**\ \**/ /**\ \**/


/* ------------------------- */
/*  Search                   */
/* ------------------------- */

function HandleEnterSearch(buttonid, e, text)
{
    var CharCode = e.keyCode? e.keyCode : e.charCode;
    if(CharCode == 13) {
        document.getElementById(buttonid).click();
        return false; 
    } else {
        return true;
    }
}


/*****************************/
/* Map Tab Control           */
/*****************************/

function clickProperties() {
    document.getElementById('SiteSearch').style.display='block';
    document.getElementById('CompanySearch').style.display='none';
    document.getElementById('DataSearch').style.display='none';
    
    document.getElementById('PropertiesOff').style.display='none';
    document.getElementById('CompaniesOff').style.display='block';
    document.getElementById('DataOff').style.display='block';
    
    document.getElementById('PropertiesOn').style.display='block';
    document.getElementById('CompaniesOn').style.display='none';
    document.getElementById('DataOn').style.display='none';
}
function hideProperties() {
    document.getElementById('SiteSearch').style.display='none';
    document.getElementById('CompanySearch').style.display='none';
    document.getElementById('DataSearch').style.display='none';
    
    document.getElementById('PropertiesOff').style.display='block';
    document.getElementById('CompaniesOff').style.display='block';
    document.getElementById('DataOff').style.display='block';
    
    document.getElementById('PropertiesOn').style.display='none';
    document.getElementById('CompaniesOn').style.display='none';
    document.getElementById('DataOn').style.display='none';
}

function clickCompanies() {
    document.getElementById('SiteSearch').style.display='none';
    document.getElementById('CompanySearch').style.display='block';
    document.getElementById('DataSearch').style.display='none';
    
    document.getElementById('PropertiesOff').style.display='block';
    document.getElementById('CompaniesOff').style.display='none';
    document.getElementById('DataOff').style.display='block';
    
    document.getElementById('PropertiesOn').style.display='none';
    document.getElementById('CompaniesOn').style.display='block';
    document.getElementById('DataOn').style.display='none';
}
function hideCompanies() {
    document.getElementById('SiteSearch').style.display='none';
    document.getElementById('CompanySearch').style.display='none';
    document.getElementById('DataSearch').style.display='none';
    
    document.getElementById('PropertiesOff').style.display='block';
    document.getElementById('CompaniesOff').style.display='block';
    document.getElementById('DataOff').style.display='block';
    
    document.getElementById('PropertiesOn').style.display='none';
    document.getElementById('CompaniesOn').style.display='none';
    document.getElementById('DataOn').style.display='none';
}

function clickData() {
    showData();
    showThematicLegend();
}
function showData() {
    document.getElementById('SiteSearch').style.display='none';
    document.getElementById('CompanySearch').style.display='none';
    document.getElementById('DataSearch').style.display='block';
    
    document.getElementById('PropertiesOff').style.display='block';
    document.getElementById('CompaniesOff').style.display='block';
    document.getElementById('DataOff').style.display='none';
    
    document.getElementById('PropertiesOn').style.display='none';
    document.getElementById('CompaniesOn').style.display='none';
    document.getElementById('DataOn').style.display='block';
}
function hideData() {
    hideDataFix();
}
function hideDataFix() {
    document.getElementById('SiteSearch').style.display='none';
    document.getElementById('CompanySearch').style.display='none';
    document.getElementById('DataSearch').style.display='none';
    
    document.getElementById('PropertiesOff').style.display='block';
    document.getElementById('CompaniesOff').style.display='block';
    document.getElementById('DataOff').style.display='block';
    
    document.getElementById('PropertiesOn').style.display='none';
    document.getElementById('CompaniesOn').style.display='none';
    document.getElementById('DataOn').style.display='none';
}




/*****************************/
/* Map Options Control       */
/*****************************/

function clickLegend() {
    if(document.getElementById('Legend').style.display=='block') {
        document.getElementById('Legend').style.display='none';
    } else {
        document.getElementById('Legend').style.display='block';
    }
}

function clickBaseMapOptions() {
    if(document.getElementById('BaseMapOptions').style.display=='block') {
        document.getElementById('BaseMapOptions').style.display='none';
    } else {
        document.getElementById('BaseMapOptions').style.display='block';
    }
}

function clickMapOverlays() {
    if(document.getElementById('MapOverlays').style.display=='block') {
        document.getElementById('MapOverlays').style.display='none';
    } else {
        document.getElementById('MapOverlays').style.display='block';
    }
}

function clickThematicLegend() {
    if(document.getElementById('ThematicLegend').style.display=='block') {
        hideThematicLegend();
        hideDataFix();
    } else {
        showThematicLegend();
        showData();
    }
}
function showThematicLegend() {        
    document.getElementById('ThematicLegend').style.display='block';
    index = document.getElementById('ctl00_ContentPlaceHolder1_SearchData').selectedIndex;
        
    document.getElementById('LegendRange1Value1').innerHTML = dataKML[index]['legend'][0][0];
    document.getElementById('LegendRange1Value2').innerHTML = dataKML[index]['legend'][0][1];
        
    document.getElementById('LegendRange2Value1').innerHTML = dataKML[index]['legend'][1][0];
    document.getElementById('LegendRange2Value2').innerHTML = dataKML[index]['legend'][1][1];
        
    document.getElementById('LegendRange3Value1').innerHTML = dataKML[index]['legend'][2][0];
    document.getElementById('LegendRange3Value2').innerHTML = dataKML[index]['legend'][2][1];
        
    document.getElementById('LegendRange4Value1').innerHTML = dataKML[index]['legend'][3][0];
    document.getElementById('LegendRange4Value2').innerHTML = dataKML[index]['legend'][3][1];
        
    document.getElementById('LegendRange5Value1').innerHTML = dataKML[index]['legend'][4][0];
    document.getElementById('LegendRange5Value2').innerHTML = dataKML[index]['legend'][4][1];
}
function hideThematicLegend() {
    document.getElementById('ThematicLegend').style.display='none';
}



/*****************************/
/* Map Control               */
/*****************************/

function clickThematic() {
    document.getElementById('OverlayThematicData').checked = true;
    toggleThematic();
}
function toggleThematic() {
    toggleKML(document.getElementById('ctl00_ContentPlaceHolder1_SearchData').selectedIndex);
    
    if(document.getElementById('OverlayThematicData').checked) {
        showThematicLegend();
        showData();
    }
}
function clickMap() {
    document.getElementById('OverlayThematicData').checked = false;
    toggleKML(document.getElementById('ctl00_ContentPlaceHolder1_SearchData').selectedIndex);
}
function clickThematicDownload() {
    downloadURL = dataKML[document.getElementById('ctl00_ContentPlaceHolder1_SearchData').selectedIndex]['download'];
    if(downloadURL.length > 0) {
        window.open(downloadURL);
    } else {
        alert("There is no download available for this data.");
    }
}

function clickMapView(Button, MapType) {
    switch(MapType) {
        case 'G_HYBRID_MAP':
            map.setMapType(G_HYBRID_MAP);
            break;
        case 'G_SATELLITE_MAP':
            map.setMapType(G_SATELLITE_MAP);
            break;
        case 'G_NORMAL_MAP':
            map.setMapType(G_NORMAL_MAP);
            break;
        case 'G_PHYSICAL_MAP':
            map.setMapType(G_PHYSICAL_MAP);
            break;
    }
}



/*****************************/
/* Search Field Control      */
/*****************************/

function clearPropertySearchFields() {
    
    // Checkboxes
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyLand').checked = false;
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyIndustrial').checked = false;
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyOffice').checked = false;
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyForSale').checked = false;
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyForLease').checked = false;
    
    // Textfields
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMinSize').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMaxSize').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMinPrice').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMaxPrice').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyProperty').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyAddress').value = "";
    
    // Drop Downs
    document.getElementById('ctl00_ContentPlaceHolder1_ddPropertyCeilingHeight').selectedIndex = 0;
}

function clearAdvancedSearchFields() {

    // Checkboxes
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyForeignTradeZone').checked = false;
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyEconomicRevitalizationArea').checked = false;
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyEnterpriseZone').checked = false;
    document.getElementById('ctl00_ContentPlaceHolder1_cbxPropertyRailService').checked = false;
    
    // Textfields
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyContiguousSpace').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyWithinStateHighway').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyWithinAirport').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyWithinInterState').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyDescription').value = "";
    
    // Drop Downs
    document.getElementById('ctl00_ContentPlaceHolder1_ddPropertyZoning').selectedIndex = 0;
    document.getElementById('ctl00_ContentPlaceHolder1_ddPropertyCounty').selectedIndex = 0;
}

function clearCompanySearchFields() {

    // Textfields
    document.getElementById('ctl00_ContentPlaceHolder1_txtCompanyNAICS').value = "";
    document.getElementById('ctl00_ContentPlaceHolder1_txtCompanyName').value = "";
    
    // Drop Downs
    document.getElementById('ctl00_ContentPlaceHolder1_ddCompanyIndustry').selectedIndex = 0;
    document.getElementById('ctl00_ContentPlaceHolder1_ddCompanyCounty').selectedIndex = 0;
    document.getElementById('ctl00_ContentPlaceHolder1_ddCompanyStaff').selectedIndex = 0;
    document.getElementById('ctl00_ContentPlaceHolder1_ddCompanyRevenue').selectedIndex = 0;
}



/*****************************/
/* Adv. Properties Control   */
/*****************************/

function clickAdvancedOptions() {
    document.getElementById('OpenAdvancedOptions').style.display='none';
    document.getElementById('AdvancedOptions').style.display='block';
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppSearchType').value = "Advanced";
}
function clickBasicOptions() {
    document.getElementById('OpenAdvancedOptions').style.display='block';
    document.getElementById('AdvancedOptions').style.display='none';
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppSearchType').value = "Basic";
}



/*****************************/
/* Search Data Control       */
/*****************************/

function clickSearch() {
    var MinSize = document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMinSize').value;
    var MaxSize = document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMaxSize').value;

    var MinPrice = document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMinPrice').value;
    var MaxPrice = document.getElementById('ctl00_ContentPlaceHolder1_txtPropertyMaxPrice').value;
        
    if (MinSize.length > 0 && MaxSize.length > 0 && parseFloat(MinSize) > parseFloat(MaxSize)) {
        alert("You have entered a minimum size that is higher than the maximum size.");
    } else if (MinPrice.length > 0 && MaxPrice.length > 0 && parseFloat(MinPrice) > parseFloat(MaxPrice)) {
        alert("You have entered a minimum price that is higher than the maximum price.");
    } else {
        document.getElementById('ctl00_ContentPlaceHolder1_ppPropertiesSearchButton').click();
    }
}



/*****************************/
/* Report Generator Control  */
/*****************************/

function clickReportGenerator() {
    document.getElementById('ReportGenerator').style.display='block';
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportAddress').value = '';
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportCity').value = '';
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportState').value = '';
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportZip').value = '';
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppLatitude').value = '';
    document.getElementById('ctl00_ContentPlaceHolder1_ppLongitude').value = '';
    
    clearReportGeneratorValues();
}
function clickReportGeneratorClose() {
    document.getElementById('ReportGenerator').style.display='none';
}

function clickReportGeneratorContext(address, city, state, zip, lat, lon) {
    clickReportGenerator();
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportAddress').value = address;
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportCity').value = city;
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportState').value = state;
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportZip').value = zip;
    document.getElementById('ctl00_ContentPlaceHolder1_ppLatitude').value = lat;
    document.getElementById('ctl00_ContentPlaceHolder1_ppLongitude').value = lon;
    clickReportToStep2();
}
function clickReportGeneratorRepost() {
    clickReportGenerator();
    clickReportToStep2();
}

function clearReportGeneratorValues() {
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportCounty').click();
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportDemographic2').click();
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportTitle').value = '';
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportType')[0].selected;
}

function clickReportGeneratorDownload() {
    document.getElementById('ReportGenerator').style.display='block';

    switch(document.getElementById('ctl00_ContentPlaceHolder1_ppReportArea').value) {
        case "LatLon":
            setLatLonReportDownload();
            break;
        
        default:
            setAddressReport();
            break;
            
    }
    clearReportGeneratorValues();
    clickReportToDownload();
}

function clickReportToStep1() {
    document.getElementById('Step1').style.display='block';
    document.getElementById('Step2').style.display='none';
    document.getElementById('Step3').style.display='none';
    document.getElementById('Step4').style.display='none';
    document.getElementById('Download').style.display='none';
}

function clickReportToStep2() {
    document.getElementById('Step1').style.display='none';
    document.getElementById('Step2').style.display='block';
    document.getElementById('Step3').style.display='none';
    document.getElementById('Step4').style.display='none';
    document.getElementById('Download').style.display='none';
}
function clickReportCountyRadio() {
    document.getElementById('ctl00_ContentPlaceHolder1_ppGeographyRadius').disabled = true;
    document.getElementById('ctl00_ContentPlaceHolder1_ppGeographyDriveTime').disabled = true;
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportUnits').disabled = true;
}
function clickReportDriveTimeRadio() {
    document.getElementById('ctl00_ContentPlaceHolder1_ppGeographyRadius').disabled = false;
    document.getElementById('ctl00_ContentPlaceHolder1_ppGeographyDriveTime').disabled = false;
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportUnits').disabled = false;
    
    if(!document.getElementById('ctl00_ContentPlaceHolder1_ppGeographyRadius').checked &&
       !document.getElementById('ctl00_ContentPlaceHolder1_ppGeographyDriveTime').checked) {
        document.getElementById('ctl00_ContentPlaceHolder1_ppGeographyRadius').checked = true;
    }
}

function clickReportToStep3() {
    document.getElementById('Step1').style.display='none';
    document.getElementById('Step2').style.display='none';
    document.getElementById('Step3').style.display='block';
    document.getElementById('Step4').style.display='none';
    document.getElementById('Download').style.display='none';
}
function clickReportDemographicRadio() {
    document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicExecutive').disabled = false;
    document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicHousehold').disabled = false;
    document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicTrend').disabled = false;
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessEmployment').disabled = true;
    document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessNAIC').disabled = true;
    document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessNAICList').disabled = true;
    
    if(!document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicExecutive').checked &&
       !document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicHousehold').checked &&
       !document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicTrend').checked) {
        document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicExecutive').checked = true;
    }
}
function clickReportBusinessRadio() {
    document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicExecutive').disabled = true;
    document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicHousehold').disabled = true;
    document.getElementById('ctl00_ContentPlaceHolder1_ppDemographicTrend').disabled = true;
    
    document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessEmployment').disabled = false;
    document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessNAIC').disabled = false;
    document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessNAICList').disabled = false;
    
    if(!document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessList').checked &&
       !document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessNAIC').checked) {
        document.getElementById('ctl00_ContentPlaceHolder1_ppBusinessList').checked = true;
    }
}

function clickReportToStep4() {
    document.getElementById('Step1').style.display='none';
    document.getElementById('Step2').style.display='none';
    document.getElementById('Step3').style.display='none';
    document.getElementById('Step4').style.display='block';
    document.getElementById('Download').style.display='none';
}

function clickReportToDownload() {
    document.getElementById('Step1').style.display='none';
    document.getElementById('Step2').style.display='none';
    document.getElementById('Step3').style.display='none';
    document.getElementById('Step4').style.display='none';
    document.getElementById('Download').style.display='block';
}

function clickReportCancel() {
    clickReportToStep1();
    clickReportGeneratorClose();
}
function setAddressReport() {
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportArea').value = 'Address';

    document.getElementById('ReportGenerator').style.display='block';

    document.getElementById('ReportGeneratorAddress').style.display = 'block';
    document.getElementById('ReportGeneratorLatLon').style.display = 'none';
    document.getElementById('Step1Address').style.display = 'block';
    document.getElementById('Step1LatLon').style.display = 'none';
}
function setLatLonReport(lat, lon, locname) {
    document.getElementById('ctl00_ContentPlaceHolder1_ppReportArea').value = 'LatLon';

    document.getElementById('ReportGenerator').style.display='block';
    
    document.getElementById('ReportGeneratorAddress').style.display = 'none';
    document.getElementById('ReportGeneratorLatLon').style.display = 'block';
    document.getElementById('Step1Address').style.display = 'none';
    document.getElementById('Step1LatLon').style.display = 'block';
    
    if(lat != null) document.getElementById('ctl00_ContentPlaceHolder1_ppLatitude').value = lat;
    if(lon != null) document.getElementById('ctl00_ContentPlaceHolder1_ppLongitude').value = lon;
    if(locname != null && locname.length > 0) {
        document.getElementById('ctl00_ContentPlaceHolder1_ppLocname').value = locname;
    } else {
        document.getElementById('ctl00_ContentPlaceHolder1_ppLocname').value = 'Property or Business Name';
    }
        
    clickReportToStep2();
}
function setLatLonReportDownload() {
    document.getElementById('ReportGenerator').style.display='block';
    
    document.getElementById('ReportGeneratorAddress').style.display = 'none';
    document.getElementById('ReportGeneratorLatLon').style.display = 'block';
    document.getElementById('Step1Address').style.display = 'none';
    document.getElementById('Step1LatLon').style.display = 'block';
    
    clickReportToStep2()
}



/*****************************/
/* About this Tool Control   */
/*****************************/

function clickToolOpen() {
    document.getElementById('ToolTip').style.display='block';
}

function clickToolCancel() {
    document.getElementById('ToolTip').style.display='none';
}



/*****************************/
/* Incrementor Box Control   */
/*****************************/

function clickIncrementUp() {
    var ReportUnits = document.getElementById('ctl00_ContentPlaceHolder1_ppReportUnits');
    var UnitValue = parseFloat(ReportUnits.value);
    var StartValue = 10;
    var Iteration = 5;
    var End = 60;
    
    if(isNaN(UnitValue)) {
        ReportUnits.value = StartValue;
        UnitValue = StartValue;
    }
    
    if(UnitValue + Iteration <= End) {
        ReportUnits.value = parseFloat(UnitValue) + Iteration;
    } else if(UnitValue != End) {
        ReportUnits.value = End;
    }
}
function clickIncrementDown() {
    var ReportUnits = document.getElementById('ctl00_ContentPlaceHolder1_ppReportUnits');
    var UnitValue = parseFloat(ReportUnits.value);
    var StartValue = 10;
    var Iteration = 5;
    var Start = 0;
    
    if(isNaN(UnitValue)) {
        ReportUnits.value = StartValue;
        UnitValue = StartValue;
    }
    
    if(UnitValue - Iteration >= Start) {
        ReportUnits.value = parseFloat(UnitValue) - Iteration;
    } else if(UnitValue != Start) {
        ReportUnits.value = Start;
    }
}



/*****************************/
/* Search Page Control       */
/*****************************/

function pageGoTo(page) {
    document.getElementById("ctl00_ContentPlaceHolder1_ppGoTo").value = page;
    document.getElementById("ctl00_ContentPlaceHolder1_ppPageGoTo").click();
}




/*****************************/
/* Comparison Control        */
/*****************************/

function addCompare(box, id) {
    if(box.checked) {
    
        if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare1").value == id) {
            return true;
        } else if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare2").value == id) {
            return true;
        } else if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare3").value == id) {
            return true;
        }
    
        if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare1").value == "") {
            document.getElementById("ctl00_ContentPlaceHolder1_ppCompare1").value = id;
        } else if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare2").value == "") {
            document.getElementById("ctl00_ContentPlaceHolder1_ppCompare2").value = id;
        } else if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare3").value == "") {
            document.getElementById("ctl00_ContentPlaceHolder1_ppCompare3").value = id;
        } else {
            box.checked = false;
            return false;
        }
        
    } else {
    
        if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare1").value == id) {
            document.getElementById("ctl00_ContentPlaceHolder1_ppCompare1").value = "";
        } else if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare2").value == id) {
            document.getElementById("ctl00_ContentPlaceHolder1_ppCompare2").value = "";
        } else if(document.getElementById("ctl00_ContentPlaceHolder1_ppCompare3").value == id) {
            document.getElementById("ctl00_ContentPlaceHolder1_ppCompare3").value = "";
        }
    }
    
    return true;
}




/*****************************/
/* Image Gallery Control     */
/*****************************/

var viewingImage = 0;
var listImages = new Array();
function previousImage() {
    viewingImage--;
    if(viewingImage < 0) {
        viewingImage = listImages.length - 1;
    }
    if(viewingImage < 0) {
        viewingImage = 0;
    }
    
    gotoImage();
}
function nextImage() {
    viewingImage++;
    if(viewingImage > listImages.length - 1) {
        viewingImage = 0;
    }
    
    gotoImage();
}
function gotoImage() {
    document.getElementById('ctl00_ContentPlaceHolder1_ppDetailsLargeImage').src = listImages[viewingImage]['Path'];
    document.getElementById('Caption').innerText = listImages[viewingImage]['Caption'];
}



/* ------------------------- */
/*  XML Loading              */
/* ------------------------- */
// global flag
var isIE = false;
// global request and XML document objects
var req;
var xmlhttp;

function loadInSiteXML(url) {
    xmlhttp=null;
	// code for Mozilla, etc.
	if (window.XMLHttpRequest) {
		xmlhttp=new XMLHttpRequest();
	}
	// code for IE
	else if (window.ActiveXObject){
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	if (xmlhttp!=null) {
		xmlhttp.onreadystatechange = processInSiteXML;
		xmlhttp.open("GET", url, true);
		xmlhttp.send(null);
	} else {
		alert("Your browser does not support XMLHTTP.");
	}
}

// handle onreadystatechange event of req object
function processInSiteXML() {
    // only if req shows "loaded"
    if (xmlhttp.readyState == 4) {
        // only if "OK"
        if (xmlhttp.status == 200) {
            parseInSiteXML();
         } else {
            alert("There was a problem retrieving the XML data:\n" + xmlhttp.statusText);
         }
    }
}



/*****************************/
/* My Files Control          */
/*****************************/

function parseInSiteXML() {
    var action = xmlhttp.responseXML.getElementsByTagName("action")[0].firstChild.data;
    var result = xmlhttp.responseXML.getElementsByTagName("result")[0].firstChild.data;
    
    switch(action) {
    
        case "addproperty":
            if(result == "Success") {
                alert("Property added to My Files");
                document.getElementById("fileProperties").innerHTML = document.getElementById("fileProperties").innerHTML*1 + 1;
            } else {
                alert(result);
            }
            break;
    
        case "removeproperty":
            if(result == "Success") {
                alert("Property removed from My Files");
                document.getElementById("fileProperties").innerHTML = document.getElementById("fileProperties").innerHTML*1 - 1;
            } else {
                alert(result);
            }
            break;
    
        case "addcompany":
            if(result == "Success") {
                alert("Company added to My Files");
                document.getElementById("fileCompanies").innerHTML = document.getElementById("fileCompanies").innerHTML*1 + 1;
            } else {
                alert(result);
            }
            break;
    
        case "removecompany":
            if(result == "Success") {
                alert("Company removed from My Files");
                document.getElementById("fileCompanies").innerHTML = document.getElementById("fileCompanies").innerHTML*1 - 1;
            } else {
                alert(result);
            }
            break;
    
        case "addreport":
            if(result == "Success") {
                document.getElementById("fileReports").innerHTML = document.getElementById("fileReports").innerHTML*1 + 1;
                document.getElementById("ppFileItMessage").innerHTML = "Your report has been added to your My Files.";
            } else {
                alert(result);
                document.getElementById("ppFileItMessage").innerHTML = "Your report has not been added to your My Files.";
            }
            break;
    
        case "removereport":
            if(result == "Success") {
                alert("Report removed from My Files");
                document.getElementById("fileReports").innerHTML = document.getElementById("fileReports").innerHTML*1 - 1;
            } else {
                alert(result);
            }
            break;
    }
}

var imgFileItEven = "/ProspectPortal/images/FileIt_Even.png";
var imgFileItOdd = "/ProspectPortal/images/FileIt_Odd.png";
var imgRemoveEven = "/ProspectPortal/images/Remove_Even.png";
var imgRemoveOdd = "/ProspectPortal/images/Remove_Odd.png";
function toggleFileIt(img, area, id) {
    if(img != null) {
        if(img.src.indexOf(imgFileItEven) > -1) {
            img.src = imgRemoveEven;
        } else if(img.src.indexOf(imgFileItOdd) > -1) {
            img.src = imgRemoveOdd;
        } else if(img.src.indexOf(imgRemoveEven) > -1) {
            img.src = imgFileItEven;
        } else {
            img.src = imgFileItOdd;
        }
    }
}
function clickFileIt(href, area, id) {
    var img = null;
    if(href != null) {
        img = href.getElementsByTagName('img')[0];
    }
    
    if(img == null || img.src.indexOf(imgFileItEven) > -1 || img.src.indexOf(imgFileItOdd) > -1) {
        loadInSiteXML('ajax.aspx?add' + area + '=' + id);
    } else {
        loadInSiteXML('ajax.aspx?remove' + area + '=' + id);
    }
    
    toggleFileIt(img, area, id);
}



/* ------------------------- */
/*  Google Street View       */
/* ------------------------- */

var panSV;
var panClient;

function showStreetView(lat, lon) {
    
    panClient = new GStreetviewClient();
    panClient.getNearestPanoramaLatLng(new GLatLng(lat, lon), processPanData);
    
}

function hideStreetView() {
    document.getElementById("StreetView").style.display = 'none';
}

function processPanData(latlon) {

    if(latlon == null) {
        alert('Street View not available at this location.');
        return 
    }
    
    var StreetViewer = document.getElementById("streetviewer");
    document.getElementById("StreetView").style.display = 'block';
    
    panoramaOptions = { latlng:latlon };
    panSV = new GStreetviewPanorama(StreetViewer, panoramaOptions);
    GEvent.addListener(panSV, "error", handleMapError);

}

function handleMapError(errorCode) {
    if(errorCode == 603) {
        document.getElementById("StreetView").style.display = 'none';
        alert("Error: Flash doesn't appear to be supported by your browser");
    }
}