var defaultMapLevel = 9;
//var mapCenterPoint = new GLatLng(40.2119, -99.5917);
var map;
var baseIcon;
function InitializeMap() {
      if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map_canvas"));
       	map.setCenter(mapCenterPoint, defaultMapLevel);
        map.enableContinuousZoom();
        map.addControl(new GSmallMapControl());

	   	// Create a base icon for all of our markers that specifies the
        // shadow, icon dimensions, etc.
        baseIcon = new GIcon();
        baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
        baseIcon.iconSize = new GSize(20, 34);
        baseIcon.shadowSize = new GSize(37, 34);
        baseIcon.iconAnchor = new GPoint(9, 34);
        baseIcon.infoWindowAnchor = new GPoint(9, 2);
        baseIcon.infoShadowAnchor = new GPoint(18, 25);

		AddPoints();

      }
    }



	function createMarker(point,text,index,numRecords) {
	  // Create a lettered icon for this point using our icon class
	  	var letter = String.fromCharCode("A".charCodeAt(0) + index);
	 	var letteredIcon = new GIcon(baseIcon);
	 	letteredIcon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";



	  // we only want the letters when we have less than 26 results
	  var markerOptions = { icon:letteredIcon };
	  if(numRecords > 26){
		markerOptions = "";
	  }

	  // Set up our GMarkerOptions object
	   var marker = new GMarker(point,markerOptions);


	  GEvent.addListener(marker, "click", function() {
	   	marker.openInfoWindowHtml(text);
		//{suppressMapPan:true}
	  });
	  return marker;
	}



function DisplayImage(url){
      theURL = '/utilities/displayImage.php?image=' + url;
      PopoffWindow('displayImage',300,300,theURL,'no','no');
}

function PopoffWindow(windowName,windowWidth,windowHeight,URL,shouldResize,shouldScroll) {
	var availableWidth = screen.availWidth;
   	var availableHeight = screen.availHeight;

   	var windowLeft = (availableWidth - windowWidth) / 2;
   	var windowTop = ((availableHeight - windowHeight) / 2) - 16;

	newWindow = window.open(URL,windowName,"width=" + windowWidth + ",height=" + windowHeight + ",left=" + windowLeft + ",top=" + windowTop + ",location=no,resizable=" + shouldResize + ",scrollbars=" + shouldScroll + ",toolbar=no");
	newWindow.focus();
}



function GetCityState(){
	if ($F('zip').length>=5){
		// kick of the PHP script that will deploy the files
		var params = 'action=GetCityState&zip=' + $F('zip');
		var phpAJAX = new Ajax.Request(
			ajaxURL,
			{
				method: 'post',
				parameters: params,
				onComplete: UpdateCityStateFields
			});
	}
}

function UpdateCityStateFields(response){
	//AlertResponse(response);
	if(response.responseText != ""){
		var splitArray = response.responseText.split("||");
		var city = splitArray[0];
		var state = splitArray[1];
		var areaCode = splitArray[2];
		Form.Element.setValue("city",city);
		Form.Element.setValue("state",state);
		Form.Element.setValue("phone",areaCode);
		//alert(city + " " + state);
	}
}


function ResizeWindow(windowWidth,windowHeight,heightOffset) {

	self.window.resizeTo(windowWidth,windowHeight);

	var availableWidth = screen.availWidth;
	var availableHeight = screen.availHeight;

	var windowLeft = ((availableWidth - windowWidth) / 2);
	var windowTop = ((availableHeight - windowHeight) / 2);

	self.window.moveTo(windowLeft,(windowTop + heightOffset));

}

function CheckRequiredSearchInfo(){
	var okToSubmit = true;
	// you need either a zip OR a city AND state
	if((! $F('zip')) && ((! $F('city')) || (! $F('state')))){
		Effect.Appear("searchMessage");
		Effect.Shake("searchMessage");
		setTimeout ("Effect.Fade('searchMessage');", 3500);
		okToSubmit = false;
	}
	return okToSubmit;
}



function ShowPhoneNumber(element,text,vendorId,sessionId,viewId){
	GetBrowserOSVersion();
	$(element).style.textDecoration = "none";
	if(browser != "Safari"){
		Effect.Fade(element, { duration:.5 });
		setTimeout ("$('" + element + "').innerHTML = '" + text + "';", 500);
		setTimeout ("Effect.Appear('" + element + "');", 500);
	} else {
		$(element).innerHTML = text;
	}

	var params = 'action=RecordShowPhone&vendor_id=' + vendorId + '&session_id=' + sessionId + '&view_id=' + viewId;
	var phpAJAX = new Ajax.Request(
		ajaxURL,
			{
				method: 'post',
				parameters: params
				//onComplete: AlertResponse
			});

}


/*
GetBrowserOSVersion()
written by Matt Pressnall 12/09/04

What does it do?
Get's the browser name, version, and OS for a client computer.  Replaces the older "getOSBrowserVersion" that doesn't correctly ID the version because browsers changed the way they represented version info

How do I use it?
<script src="/js/standardFunctionality/GetBrowserOSVersion.js"></script>
<SCRIPT LANGUAGE="JavaScript">
GetBrowserOSVersion();
</SCRIPT>
In global JS variables you will have access to:
browser - can return "Microsoft Internet Explorer", "Netscape", "Opera", etc...
version - can return "4","5", etc...
os      - can return "win" or "mac"
*/


function GetBrowserOSVersion() {
	var is_win   = ( (navigator.userAgent.toLowerCase().indexOf("win")!=-1) || (navigator.userAgent.toLowerCase().indexOf("16bit")!=-1) );
	var is_mac    = (navigator.userAgent.toLowerCase().indexOf("mac")!=-1);

	var agt=navigator.userAgent;
	var lcAgt = agt.toLowerCase();
	var appname = navigator.appName;
	var appversion = navigator.appVersion;

	var full_version = parseFloat(appversion);
	var major_version = parseInt(appversion);

	// get version info for IE
	if ((offset=lcAgt.indexOf("msie"))!=-1) {
		full_version = parseFloat(agt.substring(offset+5,agt.length));
		major_version = parseInt(''+full_version);
	}

	// get version info for Opera
	if ((offset=lcAgt.indexOf("opera"))!=-1) {
	 	full_version = parseFloat(agt.substring(offset+6,agt.length));
	 	major_version = parseInt(''+full_version);
		appname = "Opera";
	}

		// get version info for Opera
	if ((offset=lcAgt.indexOf("safari"))!=-1) {
	 	major_version = parseFloat( lcAgt.substring( lcAgt.lastIndexOf('safari/') + 7 ) );
		appname = "Safari";
	}

	// get version info for firefox
	if((offset=lcAgt.indexOf("firefox")) != -1){
		var blah = navigator.userAgent;
		var rev = blah.replace(/^.*Firefox\//g, "");
		appname = "Firefox";
		major_version = rev;
	}


	browser = appname;
	version = major_version;
	os = "";

	if(is_win){
		os = "win";
	}
	if(is_mac){
		os = "mac";
	}

}


function AlertResponse(response){
	if(response.responseText != ""){

		alert(response.responseText);
	}
}