var currentIndex = 0;
var map = null;
var points = new Array();
var markers = new Array();

function buildmap(targetid)
{
	var encodeaddresses = true;
	
	if( GBrowserIsCompatible() ){
		map = new GMap2(document.getElementById(targetid));		
		map.addControl(new GLargeMapControl());
		//map.addControl(new GMapTypeControl());
		map.addControl(new GScaleControl());
		//map.addControl(new GOverviewMapControl());
		//
		map.setCenter(new GLatLng(start.lat,start.lng), start.zoom)			
		geocoder = new GClientGeocoder();
		for(i=0; i < a.length; i++){
			if(encodeaddresses === true){
				// trace out the point
				var address = new String(a[i].address);				
				var re = new RegExp('<[^<>]*>', 'gi');
				var HTMLArray = address.match(re);
				var strippedAddress = address.replace(re, ', ');	
				if(geocoder)
				{
					geocoder.getLatLng( strippedAddress, function( point )	{ 
																  			if ( point == null )
																				return;
																			m = createMarker(point, currentIndex)
																			map.addOverlay(m);
																			currentIndex++;
																		}
													);
				}
			}else{	
				var point = new GLatLng(a[i].lat, a[i].lng);
				m = createMarker(point, i)
				map.addOverlay(m);
			}
		}
	}else{
		alert("Sorry, your browser does not support google maps");
	}
	
}

function panToMarker(index)
{
	map.panTo( points[index] );
	markers[index].openInfoWindowHtml( getMarkerHTML( index ) );
}

function getMarkerHTML( index )
{
	var _HTML = "<div class=\"gmarker\"><div style='font-size:12px;'><strong>" + a[index].title + "</strong>";
			
	_HTML += "<div style=\"margin-top:8px;margin-bottom:8px;\">"+a[index].address+"</div>";
	
	if ( a[index].t )
		_HTML += "<div style=\"margin-top:8px;margin-bottom:8px;\">Phone: "+a[index].t+"</div>";
	
	_HTML += "<div style=\"margin-top:8px;margin-bottom:8px;\">";
	
	_HTML += "<div style=\"clear:both;\">&nbsp;</div></div>";
	
	return _HTML;
}
	
function createMarker(point, index) 
{
		points[index] = point;
  		var marker = new GMarker(point);
		markers[index] = marker;
 		 GEvent.addListener(marker, "click", function() {		
    		marker.openInfoWindowHtml( getMarkerHTML( index ) );
  		});
  		return marker;
}

function openpopup( url, width, height )
{
	window.open( url, 'popup', 'scrollbars=yes,resize=no,width='+width+',height='+height );
}

function openPrivacyWin()
{
	openpopup( 'popups/privacy.php', 600, 500 );
	
	return false;
}

function openTermsWin()
{
	openpopup( 'popups/terms.php', 600, 500 );
	
	return false;
}

function openDisclaimerWin()
{
	openpopup( 'popups/disclaimer.php', 600, 500 );
	
	return false;
}

function openWarrantyWin()
{
	openpopup( 'popups/warranty.php', 600, 500 );
	
	return false;
}