$(function()
{
	/*var map = null;

	var geocoder = new GClientGeocoder();
	var map_center = new GLatLng(intelli.config.map_latitude, intelli.config.map_longtitude);
	var bounds	= new GLatLngBounds();

	$("input[name='address']").parent().append('&nbsp;<a href="' + intelli.config.esyn_url + 'controller.php?plugin=googlemap&file=map" id="check_address">Check Address</a>');
	$("input[name='longitude']").parent().append('&nbsp;<a href="' + intelli.config.esyn_url + 'controller.php?plugin=googlemap&file=map" id="select_coordinates">Select Coordinates</a>');

	$("#check_address").colorbox(
	{
		onComplete: function()
		{
			map = new GMap2(document.getElementById('map'));
			map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
			map.addControl(new GScaleControl());

			map.disableDoubleClickZoom();

			var address = $("input[name='address']").val();
			var city = $("input[name='city']").val();
			var state = $("input[name='state']").val();
			var zip = $("input[name='zip']").val();
			var country = $("input[name='country']").val();

			var lat = $("input[name='latitude']").val();
			var lng = $("input[name='longitude']").val();
		
			var zoom = $("input[name='zoom']").val();

			var full_address = address + ' ' + city + ', ' + state + ' ' + zip + ', ' + country;

			if('' != lat && '' != lng)
			{
				var point = new GLatLng(lat, lng);

				var marker = new GMarker(point);
				var html = '';

				map.addOverlay(marker);

				bounds.extend(point);

				map.setCenter(bounds.getCenter(), zoom * 1);

				GEvent.addListener(marker, "drag", function()
				{
					var mpoint = marker.getPoint();

					$("input[name='latitude']").val(mpoint.lat());
					$("input[name='longitude']").val(mpoint.lng());
				});
			}
			else if('' != full_address.split(' ').join('').replace(/\,/g, ''))
			{
				geocoder.getLatLng(full_address, function(point)
				{
					if(point)
					{
						var marker = new GMarker(point, {draggable: true});
						var html = '';

						map.clearOverlays();
						map.addOverlay(marker);

						bounds.extend(point);
						
						map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds));

						GEvent.addListener(map, 'click', mapClick);
						
						GEvent.addListener(marker, "click", function()
						{
							map.panTo(marker.getLatLng());
						});

						GEvent.addListener(marker, "drag", function()
						{
							var mpoint = marker.getPoint();

							$("input[name='latitude']").val(mpoint.lat());
							$("input[name='longitude']").val(mpoint.lng());
						});

						$("input[name='latitude']").val(point.lat());
						$("input[name='longitude']").val(point.lng());
						$("input[name='zoom']").val(map.getZoom());
					}
					else
					{
						var msg = 'The ' + full_address + ' address is not found. Please try to select coordinates manually.';

						alert(msg);
					}
				});
			}
			else
			{
				var msg = 'The address string is empty. Please type any address or try to select coordinates manually.';

				map.setCenter(map_center, parseInt(intelli.config.map_search_zoom));

				alert(msg);
			}

			GEvent.addListener(map, 'click', mapClick);
			GEvent.addListener(map, 'zoomend', zooming);
		}
	});

	$("#select_coordinates").colorbox(
	{
		onComplete: function()
		{
			var lat = $("input[name='latitude']").val();
			var lng = $("input[name='longitude']").val();
		
			var zoom = $("input[name='zoom']").val();

			map = new GMap2(document.getElementById('map'));

			map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
			map.addControl(new GScaleControl());

			map.disableDoubleClickZoom();

			if('' != lat && '' != lng)
			{
				var point = new GLatLng(lat, lng);

				var marker = new GMarker(point);
				var html = '';

				map.addOverlay(marker);

				bounds.extend(point);

				map.setCenter(bounds.getCenter(), zoom * 1);

				GEvent.addListener(marker, "drag", function()
				{
					var mpoint = marker.getPoint();

					$("input[name='latitude']").val(mpoint.lat());
					$("input[name='longitude']").val(mpoint.lng());
				});
			}
			else
			{
				map.setCenter(map_center, parseInt(intelli.config.map_search_zoom));
			}

			GEvent.addListener(map, 'click', mapClick);
			GEvent.addListener(map, 'zoomend', zooming);
		}
	});

	function zooming()
	{
		var zoom = map.getZoom();

		$("input[name='zoom']").val(zoom);
	}

	function mapClick(ol,latlon,olLatlon)
	{
		if (clckTimeOut)
	   	{
			window.clearTimeout(clckTimeOut);
			clckTimeOut = null;
			doubleClick(ol,latlon);
        }
		else
		{
			clckTimeOut = window.setTimeout(function()
			{
				singleClick(ol,latlon,olLatlon)
			},500);
        }

	}

	var clckTimeOut = null; 

	function doubleClick(ol, latlng, olLatlon)
	{
		var lat = latlng.lat();
		var lng = latlng.lng();
		var zoom = map.getZoom();

		var point = new GLatLng(lat, lng);
		
		$("input[name='latitude']").val(lat);
		$("input[name='longitude']").val(lng);
		$("input[name='zoom']").val(zoom);

		var marker = new GMarker(point, {draggable: true});

		map.clearOverlays();
		map.addOverlay(marker);

		GEvent.addListener(marker, "drag", function()
		{
			var mpoint = marker.getPoint();

			$("input[name='latitude']").val(mpoint.lat());
			$("input[name='longitude']").val(mpoint.lng());
		});
	}

	function singleClick(ol,latlon,olLatlon)
	{
        window.clearTimeout(clckTimeOut);
        clckTimeOut = null;
	}*/
});

