//<![CDATA[
	
    var map;
    var geocoder;
	/*url=document.location.href;
	url=url.split("addr=");
	if(url[1]!='')
	{
		document.getElementById('addressInput').value=url[1];
		searchLocations();
	}*/
	var theIcon = new GIcon(G_DEFAULT_ICON);
	
	theIcon.image = sl_map_end_icon;
	//theIcon.image = 'http://localhost/macxprt/wp-content/plugins/store-locator/icons/bubble.png';
	
	
	function searchtype()
	{
		
		var theIcon = new GIcon(G_DEFAULT_ICON);
		theIcon.image = sl_map_end_icon;
		
		if (sl_map_end_icon.indexOf('flag')!='-1') {theIcon.shadow = add_base + "/icons/flag_shadow.png";}
		else if (sl_map_end_icon.indexOf('arrow')!='-1') {theIcon.shadow = add_base + "/icons/arrow_shadow.png";}
		else if (sl_map_end_icon.indexOf('bubble')!='-1') {theIcon.shadow = add_base + "/icons/bubble_shadow.png";}
		else if (sl_map_end_icon.indexOf('marker')!='-1') {theIcon.shadow = add_base + "/icons/marker_shadow.png";}
		else if (sl_map_end_icon.indexOf('sign')!='-1') {theIcon.shadow = add_base + "/icons/sign_shadow.png";}
		else {theIcon.shadow = add_base + "/icons/blank.png";}
		theIcon.iconSize = new GSize(sl_map_end_icon_width, sl_map_end_icon_height);
	
	}
	 
		
	//theIcon.image = add_base + "/icons/red_flag1.png";
	if (sl_map_end_icon.indexOf('flag')!='-1') {theIcon.shadow = add_base + "/icons/flag_shadow.png";}
	else if (sl_map_end_icon.indexOf('arrow')!='-1') {theIcon.shadow = add_base + "/icons/arrow_shadow.png";}
	else if (sl_map_end_icon.indexOf('bubble')!='-1') {theIcon.shadow = add_base + "/icons/bubble_shadow.png";}
	else if (sl_map_end_icon.indexOf('marker')!='-1') {theIcon.shadow = add_base + "/icons/marker_shadow.png";}
	else if (sl_map_end_icon.indexOf('sign')!='-1') {theIcon.shadow = add_base + "/icons/sign_shadow.png";}
	else {theIcon.shadow = add_base + "/icons/blank.png";}
	theIcon.iconSize = new GSize(sl_map_end_icon_width, sl_map_end_icon_height);
	//theIcon.iconSize = new GSize(40, 68);

	// Added by Moyo 5/23/08 11:52 am
	//var sidebar1 = document.getElementById('sidebar');
    //sidebar1.innerHTML = '';
    //if (markers.length == 0) {
		//sidebar1.innerHTML = '<h1>Enter Your Address or Zip Code Above.</h2>';
	//}
	/*var Icon = new GIcon();
	GDownloadUrl(add_base + "/data-xml.php", function(data, responseCode) {
		var xml = GXml.parse(data);
		var markers = xml.documentElement.getElementsByTagName("marker");
		
		 for (var i = 0; i < markers.length; i++) {
			var type = markers[i].getAttribute('type');
			if( type == 'consultant'){	
				var Icon = new GIcon();
				Icon.image = add_base + '/icons/consultant.png';
				Icon.iconSize = new GSize(20, 34);
				Icon.shadow = "myshadow.png";
				Icon.shadowSize = new GSize(36, 34);
				Icon.iconAnchor = new GPoint(5, 34);
				Icon.infoWindowAnchor = new GPoint(5, 2);
			//theIcon.image = add_base + '/icons/consultant.png';
				//console.log(Icon);
			}else if( type == 'store' ){	
				//theIcon.image = sl_map_end_icon;
			}
		}
	});*/
    function sl_load() {
		
      if (GBrowserIsCompatible()) {
	    geocoder = new GClientGeocoder();
        map = new GMap2(document.getElementById('map'));
		//map.addControl(new GSmallMapControl());
		//map.addControl(new GSmallZoomControl());
		
		if (sl_map_overview_control==1) {
			map.addControl(new GOverviewMapControl());
			}
		//map.addControl(new GLargeMapControl); //11/29/08 1:19am Moyo
        //map.addControl(new GMapTypeControl());
		//map.addControl(new GMapTypeControl());
		map.addMapType(G_PHYSICAL_MAP);
		geocoder.getLatLng(sl_google_map_country, function(latlng) {
			map.setCenter(latlng, sl_zoom_level, sl_map_type);
			map.setUIToDefault();
		
			url=document.location.href;
			url=url.split("addr=");
			//alert(document.getElementById('addressInput').value);
			//alert(url[0]);
			//alert(url[1]);
			url[1]=url[1].replace('%20',' ')
			if(url[1]=='ZIP or Address')
			{
				alert('Please select Location.');
				//searchLocations();
			}
			if(url[1]!='undefined')
			{
		
				//url[1]=url[1].replace('%20',' ')
				if(url[1]!='')
				{
					document.getElementById('addressInput').value=url[1];
					searchLocations();
				}
			}	
		});
      }
	  
	  //added by Moyo 1/25/09 to show locations by default
	if (sl_load_locations_default=="1") {
	var bounds = new GLatLngBounds();
	  //markerOpts = { icon:theIcon };
	  
	  markerOpts = { icon:theIcon };
      GDownloadUrl(add_base + "/data-xml.php", function(data, responseCode) {
		var xml = GXml.parse(data);
		var markers = xml.documentElement.getElementsByTagName("marker");
		for (var i = 0; i < markers.length; i++) {
		//	var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
          //                parseFloat(markers[i].getAttribute("lng")));
		//start					
		var name = markers[i].getAttribute('name');
         var address = markers[i].getAttribute('address');
         var distance = parseFloat(markers[i].getAttribute('distance'));
         var point = new GLatLng(parseFloat(markers[i].getAttribute('lat')),
                                 parseFloat(markers[i].getAttribute('lng')));
		
			var lat=parseFloat(markers[i].getAttribute('lat'));
			var lng=parseFloat(markers[i].getAttribute('lng'));
		 var description = markers[i].getAttribute('description');
		 var url = markers[i].getAttribute('url');
		 var hours = markers[i].getAttribute('hours');
		 var phone = markers[i].getAttribute('phone');
		 var image = markers[i].getAttribute('image');
		  var type  = markers[i].getAttribute('type');
		  var email  = markers[i].getAttribute('email');
		 var business_name  = markers[i].getAttribute('business_name'); 
		 var store_name  = markers[i].getAttribute('store_name'); 
		 var consultant_name  = markers[i].getAttribute('consultant_name');
		 
		 // end
			var marker = createMarker(point, name, address, "", description, url, hours, phone, image, type,email,business_name,store_name,consultant_name);
		
			map.addOverlay(marker);
			bounds.extend(point);
		}
		map.setCenter(bounds.getCenter(), (map.getBoundsZoomLevel(bounds)-1));
		map.setUIToDefault();
	  });
     }
	}

   function searchLocations() {
	
	//window.location="http://localhost/macxprt/consultant?address=''";
     var address = document.getElementById('addressInput').value;
	 geocoder.getLatLng(address, function(latlng) {
       if (!latlng) {
        // alert(address + ' not found');
       } else {
         searchLocationsNear(latlng, address); // address param added by Moyo 5/23/08
       }
	   document.getElementById('addressInput1').style.color='black';
	   document.getElementById('addressInput1').value= address;
     });
   }

   function searchLocationsNear(center, homeAddress) { // homeAddress param added by Moyo 5/23/08
  
     var radius = document.getElementById('radiusSelect').value;
	 var searchUrl = add_base + '/generate-xml.php?lat=' + center.lat() + '&lng=' + center.lng() + '&radius=' + radius;
     GDownloadUrl(searchUrl, function(data) {
       var xml = GXml.parse(data);
       var markers = xml.documentElement.getElementsByTagName('marker');
       map.clearOverlays();
	   
	    //marker for searched location - Moyo Aluko: 5/14/08, 4 am
	   var theIcon = new GIcon(G_DEFAULT_ICON);
		theIcon.image = sl_map_home_icon;
	
		if (sl_map_home_icon.indexOf('flag')!='-1') {theIcon.shadow = add_base + "/icons/flag_shadow.png";}
		else if (sl_map_home_icon.indexOf('arrow')!='-1') {theIcon.shadow = add_base + "/icons/arrow_shadow.png";}
		else if (sl_map_home_icon.indexOf('bubble')!='-1') {theIcon.shadow = add_base + "/icons/bubble_shadow.png";}
		else if (sl_map_home_icon.indexOf('marker')!='-1') {theIcon.shadow = add_base + "/icons/marker_shadow.png";}
		else if (sl_map_home_icon.indexOf('sign')!='-1') {theIcon.shadow = add_base + "/icons/sign_shadow.png";}
		else {theIcon.shadow = add_base + "/icons/blank.png";}
		theIcon.iconSize = new GSize(sl_map_home_icon_width, sl_map_home_icon_height);
		//theIcon.shadowSize = new GSize(30,30);
		
		var bounds = new GLatLngBounds(); //added here 1/25/09 by Moyo to handle extending bounds to show searched location
		markerOpts = { icon:theIcon };
		point = new GLatLng (center.lat(), center.lng());
		bounds.extend(point); //added 1/25/09 to handle showing searched location within bounds everytime
		var homeMarker = new GMarker(point, markerOpts);
      var html = '<div id="sl_info_bubble"><span class="your_location_label">Your Location:</span> <br/>' + homeAddress + '</div>';
      GEvent.addListener(homeMarker, 'click', function() {
        homeMarker.openInfoWindowHtml(html);
      });
      map.addOverlay(homeMarker);
	  //end marker for searched location

       var sidebar = document.getElementById('map_sidebar');
       sidebar.innerHTML = '';
       if (markers.length == 0) {
         sidebar.innerHTML = '<div class="no_results_found"><h2>No results found.</h2></div>';
         geocoder = new GClientGeocoder();
       	geocoder.getLatLng(sl_google_map_country, function(latlng) {
			map.setCenter(point, sl_zoom_level);
		});
         return;
       }
	   
       //var bounds = new GLatLngBounds(); //removed from here 1/25/09 to handle showing searched location with bounds at all times
       for (var i = 0; i < markers.length; i++) {
         var name = markers[i].getAttribute('name');
         var address = markers[i].getAttribute('address');
         var distance = parseFloat(markers[i].getAttribute('distance'));
         var point = new GLatLng(parseFloat(markers[i].getAttribute('lat')),
                                 parseFloat(markers[i].getAttribute('lng')));
	
		 var description = markers[i].getAttribute('description');
		 var url = markers[i].getAttribute('url');
		 var hours = markers[i].getAttribute('hours');
		 var phone = markers[i].getAttribute('phone');
		 var image = markers[i].getAttribute('image');
		 var type  = markers[i].getAttribute('type');
		 var email  = markers[i].getAttribute('email');
		 var business_name  = markers[i].getAttribute('business_name'); 
		 var store_name  = markers[i].getAttribute('store_name'); 
		 var consultant_name  = markers[i].getAttribute('consultant_name');
		 var marker = createMarker(point, name, address, homeAddress, description, url, hours, phone, image ,type,email,business_name,store_name,consultant_name); // homeAddress param added by Moyo 5/23/08 **description through image added 12/2/08 by Moyo
         map.addOverlay(marker);
         var sidebarEntry = createSidebarEntry(marker, name, address, distance, homeAddress, url); // homeAddress param added by Moyo 5/23/08
         sidebar.appendChild(sidebarEntry);
         bounds.extend(point);
       }
	  map.setCenter(bounds.getCenter(), (map.getBoundsZoomLevel(bounds)-1)); //8/28/08: -1 to zoom out one step
	 });
	  
   }

   
   /*------*/
   
   
    function createMarker(point, name, address, homeAddress, description, url, hours, phone, image, type,email,business_name,store_name,consultant_name) { // homeAddress param added by Moyo 5/23/08
	
	
	//mapwidth=563px;
	//mapheight=350px;
	
		
	
	var myIcon = new GIcon(G_DEFAULT_ICON);
	if(type=="consultant")
	{
		//myIcon.image =  add_base + "/icons/consultant2.png";	
		myIcon.image =  add_base + "/icons/consultant2.png";
		//myIcon.image = sl_consultant_icon; 
		
		myIcon.iconSize = new GSize(20, 34);
		myIcon.shadow = add_base +"";
	}	
	else
	{
		myIcon.image =add_base + "/icons/store_ico.png";		
		//myIcon.image= sl_store_icon;
		myIcon.iconSize = new GSize(20, 25);
		myIcon.shadow = add_base +"";
	}
	  markerOpts = { icon:myIcon };
	
	  var marker = new GMarker(point, markerOpts);
	  if(type=="consultant")
	  {
		  var more_html="";
		  var more_html_consultant="";
		  if(url.indexOf("http://")==-1) {url="http://"+url;} //added by Moyo 10/19/2009 so that www.someurl.com will show up as http://www.someurl.com
		  if (url.indexOf("http://")!=-1 && url.indexOf(".")!=-1) {more_html+="| <a href='"+url+"' target='_blank' class='storelocatorlink'><nobr>" + sl_website_label +"</nobr></a>"} else {url=""}
		  if (image.indexOf(".")!=-1) {more_html+="<br/><img src='"+image+"' class='sl_info_bubble_main_image'>"} else {image=""}
		  if (description!="") {more_html+="<br/>"+description+"";} else {description=""}
		  if (hours!="") {more_html+="<br/><span class='location_detail_label'>Hours:</span> "+hours;} else {hours=""}
		  if (consultant_name!="") {more_html_consultant+="<br/><span class='location_detail_label'>Consultant Name:</span> "+consultant_name;} else {consultant_name=""}
		  if (business_name!="") {more_html+="<br/><span class='location_detail_label'>Business Name:</span> "+business_name;} else {business_name=""}
		  if (phone!="") {more_html+="<br/><span class='location_detail_label'>Phone:</span> "+phone;} else {phone=""}
		  if (email!="") {more_html+="<br/><span class='location_detail_label'>Email:</span> <a href='mailto:"+email+"'>"+email+"</a>";} else {email=""}
		  //if (store_name!="") {more_html+="<br/><span class='location_detail_label'>Store Name:</span> "+store_name;} else {store_name=""}
		  
			var street = address.split(',')[0]; if (street.split(' ').join('')!=""){street+='<br/>';}else{street="";}
			var city = address.split(',')[1]; if (city.split(' ').join('')!=""){city+=', ';}else{city="";}
			var state_zip = address.split(',')[2]; 	  
			//address=street + city + state_zip;
		  
		  if (homeAddress.split(" ").join("")!="") {
			var html = '<div id="sl_info_bubble"><!--tr><td--><strong>'+more_html_consultant+'</strong><br>' + street + city + state_zip + '<br/> <a href="http://' + sl_google_map_domain + '/maps?saddr=' + encodeURIComponent(homeAddress) + '&daddr=' + encodeURIComponent(address) + '" target="_blank" class="storelocatorlink">Directions</a> ' + more_html + '<br/><!--/td></tr--></div>'; // Get Directions link added by Moyo 5/23/08
	  }
	  else {
		var html = '<div id="sl_info_bubble"><!--tr><td--><strong>' + more_html_consultant + '</strong><br>' + street + city + state_zip + '<br/> <a href="http://' + sl_google_map_domain + '/maps?q=' + encodeURIComponent(address) + '" target="_blank" class="storelocatorlink">Map</a> ' + more_html + '<!--/td></tr--></div>';
	  }
	  }else
	  {
			var more_html="";
			var more_html_store="";
		  if (store_name!="") {more_html_store+="<br/><span class='location_detail_label'>Store Name:</span> "+store_name;} else {store_name=""}		
		  if (image.indexOf(".")!=-1) {more_html+="<br/><img src='"+image+"' class='sl_info_bubble_main_image'>"} else {image=""}
		  if (description!="") {more_html+="<br/>"+description+"";} else {description=""}
		  //if (hours!="") {more_html+="<br/><span class='location_detail_label'>Hours:</span> "+hours;} else {hours=""}
		  //if (consultant_name!="") {more_html+="<br/><span class='consultant_label'>Consultant Name:</span> "+consultant_name;} else {consultant_name=""}
		  //if (business_name!="") {more_html+="<br/><span class='location_detail_label'>Business Name:</span> "+business_name;} else {business_name=""}
		  if (phone!="") {more_html+="<br/><span class='location_detail_label'>Phone12:</span> "+phone;} else {phone=""}
		 // if (email!="") {more_html+="<br/><span class='location_detail_label'>Email:</span> <a href='mailto:"+email+"'>"+email+"</a>";} else {email=""}
		  if(url!="") {more_html+="<br/><span class='location_detail_label'>Website:</span> <a href='http://"+url+"' target='_blank'>"+url+"</a>";} else {} //added by Moyo 10/19/2009 so that www.someurl.com will show up as http://www.someurl.com
		  //if (url.indexOf("http://")!=-1 && url.indexOf(".")!=-1) {more_html+="| <a href='"+url+"' target='_blank' class='storelocatorlink'><nobr>" + sl_website_label +"</nobr></a>"} else {url=""}
		  
		  
			var street = address.split(',')[0]; if (street.split(' ').join('')!=""){street+='<br/>';}else{street="";}
			var city = address.split(',')[1]; if (city.split(' ').join('')!=""){city+=', ';}else{city="";}
			var state_zip = address.split(',')[2]; 	  
			//address=street + city + state_zip;
		  
		  if (homeAddress.split(" ").join("")!="") {
			var html = '<div id="sl_info_bubble"><strong>'+more_html_store+'</strong><br/><!--tr><td--><strong>Address</strong><br>' + street + city + state_zip + '<br/> <a href="http://' + sl_google_map_domain + '/maps?saddr=' + encodeURIComponent(homeAddress) + '&daddr=' + encodeURIComponent(address) + '" target="_blank" class="storelocatorlink">Directions</a> ' + more_html + '<br/><!--/td></tr--></div>'; // Get Directions link added by Moyo 5/23/08
		  }
		  else {
			var html = '<div id="sl_info_bubble"><strong>'+more_html_store+'</strong><br/><!--tr><td--><strong>Address</strong><br>' + street + city + state_zip + '<br/> <a href="http://' + sl_google_map_domain + '/maps?q=' + encodeURIComponent(address) + '" target="_blank" class="storelocatorlink">Map</a> ' + more_html + '<!--/td></tr--></div>';
		}
	  }
      GEvent.addListener(marker, 'mouseover', function() {
        marker.openInfoWindowHtml(html);
		//t=GMap2.getInfoWindow();
		//t.reset(size:400);
      });
      return marker;
    }

	var resultsDisplayed=0;
	var bgcol="white";
	
    function createSidebarEntry(marker, name, address, distance, homeAddress, url) { // homeAddress param added by Moyo 5/23/08
	
	document.getElementById('map_sidebar_td').style.display='block';
      var div = document.createElement('div');
	  var street = address.split(',')[0]; 
	  var city = address.split(',')[1]; if (city.split(' ').join('')!=""){city+=', ';}else{city="";}
	  var state_zip = address.split(',')[2]; 
	  //var more = address.split(',')[3];
	  if(url.indexOf("http://")==-1) {url="http://"+url;} //added by Moyo 10/19/2009 so that www.someurl.com will show up as http://www.someurl.com
	  if (url.indexOf("http://")!=-1 && url.indexOf(".")!=-1) {link="<a href='"+url+"' target='_blank' class='storelocatorlink'><nobr>" + sl_website_label +"</nobr></a>&nbsp;|&nbsp;"} else {url=""; link="";}
	  
      var html = '<center><table width="96%" cellpadding="4px" cellspacing="0" class="searchResultsTable"><tr><td class="results_row_left_column"><span class="location_name">' + name + '</span><br>' + distance.toFixed(1) + ' ' + sl_distance_unit + '</td><td class="results_row_center_column">' + street + '<br/>' + city + state_zip +' </td><td class="results_row_right_column">' + link + '<a href="http://' + sl_google_map_domain + '/maps?saddr=' + encodeURIComponent(homeAddress) + '&daddr=' + encodeURIComponent(address) + '" target="_blank" class="storelocatorlink">Directions</a></td></tr></table></center>'; // Get Directions link added by Moyo 5/23/08
      /*if (resultsDisplayed==0) {
		div.innerHTML = "<table><tr><td>";
	  }*/
	  div.innerHTML = html;
	  div.className='results_entry';
      /*div.style.cursor = 'pointer';
      div.style.padding = '4px';
	  div.style.color = 'black'; //added by Moyo 11/2/08 10:43am
	  div.style.borderBottom = 'solid silver 1px' ; // added by Moyo 5/23/08 11:23am
	  div.style.backgroundColor = bgcol; //added 12/2/2208*/
	  resultsDisplayed++;
      GEvent.addDomListener(div, 'click', function() {
        GEvent.trigger(marker, 'click');
      }); /*
      GEvent.addDomListener(div, 'mouseover', function() {
        div.style.backgroundColor = 'salmon';
      });
      GEvent.addDomListener(div, 'mouseout', function() {
        div.style.backgroundColor = '#fff';
      });
	  if (bgcol=="white") {bgcol="#ffffff";} else {bgcol="white";}	  */
      return div;
    }
    //]]>

	//document.onload=load();
//	document.onunload=GUnload();
