// JavaScript Document
// Shmoogle js functions
function createMarker(point, mOptions, mType, html1, html2, pointX, units) {
	var marker = new GMarker(point, mOptions);
	marker.type = mType;

	GEvent.addListener(marker, 'mousedown', function() 
	{
		map.savePosition();
		var polyOptions = {geodesic:true, clickable:false};
		var polyline_shadow = new GPolyline(
			[
				pointX, 
				point
			], "#000000", 3, .6, polyOptions);
		var polyline = new GPolyline(
			[
				pointX, 
				point
			], "#FFFF00", 2, 1, polyOptions);
	
		map.addOverlay(polyline_shadow);
		map.addOverlay(polyline);
	  	var dist = polyline.getLength();
	  	var calc = (units == 'miles') ? "1609.344" : "1000";
	  	var distance = (dist/calc);
	  	var distanceText = "Distance: " + formatNumber(distance,2,',','.','','','-','') + " " + units;
	  	var infoTabs = 	[ 
							new GInfoWindowTab("Tab 1", html1 + distanceText),
							new GInfoWindowTab("Tab 2", html2)
						];
	
		marker.openInfoWindowTabsHtml(infoTabs);
  
  		var iw = map.getInfoWindow();

  		GEvent.addListener(iw, 'closeclick', function() 
			{
				map.returnToSavedPosition();
			}); // end of closeclick function

  		GEvent.addListener(marker, 'infowindowbeforeclose', function() 
			{	
		 		map.removeOverlay(polyline_shadow);
				map.removeOverlay(polyline);
			}); // end of infowindowclose function
  	}); // end of mousedown function
	markers.push(marker);
	return marker;
}

function createSidebarEntry(marker, name) {
      var div = document.createElement('div');
      //var html = name;
      div.innerHTML = name;
      div.style.cursor = 'pointer';
      div.style.marginBottom = '2px'; 
      GEvent.addDomListener(div, 'click', function() {
		GEvent.trigger(marker, 'click');
      });
      GEvent.addDomListener(div, 'mouseover', function() {
        div.style.backgroundColor = '#eee';
      });
      GEvent.addDomListener(div, 'mouseout', function() {
        div.style.backgroundColor = '#fff';
      });
      return div;
    }

function showHide(radval,divid,divid2) {
	if (radval == 1)
	{
		document.getElementById(divid).style.display="block";
		document.getElementById(divid2).style.display="none";
	}
   if (radval == 0)
    {
		document.getElementById(divid).style.display="none";
		document.getElementById(divid2).style.display="block";
    }
}

// number formatting function
// copyright Stephen Chapman 24th March 2006, 10th February 2007
// permission to use this function is granted provided
// that this copyright notice is retained intact

function formatNumber(num,dec,thou,pnt,curr1,curr2,n1,n2) {var x = Math.round(num * Math.pow(10,dec));if (x >= 0) n1=n2='';var y = (''+Math.abs(x)).split('');var z = y.length - dec; if (z<0) z--; for(var i = z; i < 0; i++) y.unshift('0');y.splice(z, 0, pnt); if(y[0] == pnt) y.unshift('0'); while (z > 3) {z-=3; y.splice(z,0,thou);}var r = curr1+n1+y.join('')+n2+curr2;return r;}

/*// for Mootools slider
window.addEvent('domready', function()
{
	var el = $('opacSlider');
	// Create the new slider instance
	new Slider(el, el.getElement('.knob'), 
	{
		steps: 10,	
		range: [0],	
		offset: 0,
		onChange: function(value)
		{
			// Everytime the value changes, we change the font of an element
			//font.setStyle('font-size', value);
			//alert(value);
			var pane = map.getPane(G_MAP_OVERLAY_LAYER_PANE);
			var opac1 = (value*10);
			var opac2 = (value/10);
			/*if(typeof(pane.style.filter)=="string")
			{
				pane.style.filter ="progid:DXImageTransform.Microsoft.Alpha(opacity="+opac1+")";
			}
			// int like 0.8
			if(typeof(pane.style.KHTMLOpacity)=="string")
			{
				pane.style.KHTMLOpacity=opac2;
			}
			if(typeof(pane.style.MozOpacity)=="string")
			{
				pane.style.MozOpacity=opac2;
			}
			if(typeof(pane.style.opacity)=="string")
			{
				pane.style.opacity=opac2;
			}
		}
	});
	//create our Accordion instance
	var myAccordion = new Accordion($('accordion'), 'div.toggler', 'div.element', {
		opacity: true,
		fixedHeight: 440,
		fixedWidth: 150,
		onActive: function(toggler, element){
			$(element).setStyle('overflow', 'auto');
			toggler.setStyle('color', '#FFF');
		},
		onBackground: function(toggler, element){
			toggler.setStyle('color', '#CCC');
		}
	});
});*/


function appendMapType(link, urlarg) {
	var urlarg = map.getCurrentMapType().getUrlArg();
	var mc = map.getCenter();
	var mz = map.getZoom();
	location.href=link + "&map_type="+urlarg+"&mc="+mc+"&mz="+mz;
}


function myclick(i) {
	markers[i].initialize(map);
	GEvent.trigger(markers[i], "mousedown");
}


function toggleGroup(whichType) {
	for (var i = 0; i < markers.length; i++) 
	{
		var marker = markers[i];
		if(markers[i].type == whichType)
		{
			if (marker.isHidden()) 
			{
				marker.show();
			} 
			else 
			{
				marker.hide();
			}
		}
	}
}


function toggleMyKml() {
      if (toggleState == 1) {
        map.removeOverlay(kml0);
        toggleState = 0;
      } else {
        map.addOverlay(kml0);
        toggleState = 1;
      }
    }

