$(document).ready(function(){
	initialize();
});
function showTooltip(tip) {
	GEvent.trigger(places[tip], 'mouseover');
}
function hideTooltip(tip) {
	GEvent.trigger(places[tip], 'mouseout');
}
function initialize() {
	if (GBrowserIsCompatible()) {
		
		var map = new GMap2(document.getElementById("map_canvas"));
		map.setCenter(new GLatLng(43.023, -76.23), 10);
		var customUI = map.getDefaultUI();
		customUI.controls.maptypecontrol = true;
		customUI.controls.largemapcontrol3d = true;
		customUI.zoom.scrollwheel = false;
		map.setUI(customUI);

		function createArea(enc, lev, bg, label, url) {
			area = new GPolygon.fromEncoded({
				polylines: [{
					points: enc,
					zoomFactor: 32,
					levels: lev,
					numLevels: 4,
					color: bg,
					opacity: ".6",
					weight: 2
				}],
				color: bg,
				fill: "1",
				opacity: ".3",
				outline: true
			});

			var tooltip = new Tooltip(area, label, 0, true);
			GEvent.addListener(area, "mouseover", function() { this.setFillStyle({opacity: ".6"}); this.tooltip.show(); });
			GEvent.addListener(area, "mouseout", function() { this.setFillStyle({opacity: ".3"}); this.tooltip.hide(); });
			GEvent.addListener(area, "click", function() { window.location = url });
			area.tooltip = tooltip; 
			map.addOverlay(tooltip);
			map.addOverlay(area);

			return area;
		}

		var color1 = '#d6c511'; // yellow
		var color2 = '#1bd611'; // green
		var color3 = '#1173d6'; // blue
		var color4 = '#bf222d'; // red

		// Defined as: areas('id', 'points_encoding', 'B_levels', 'colors', 'tooltip', 'link_url')
		var areas = new Array(
			new Array('baldwin', 'o~zfGbfxqMluWsGqKw_CpiBgsDhcBuXqKufQsbC_{KypCtcAanBwfF{}Bha@{cAz{DuiHj}AopCdeIfw@hyY', 'BBBBBBBBBBBBBB', color1, 'Baldwinsville', '/Baldwinsville-Real-Estate'),

			new Array('clay', 'yvhfG`hipM{}Bha@{cAz{DwzDzi@}tAqnBygDpnByj@qnBrzDw_CxcAgsDg_Aa{@ecHj}AuY{pC`nDaiGliVujDgElyNoiBjdE', 'BBBBBBBBBBBBBBBB', color2, 'Clay', '/Clay-Real-Estate'),

			new Array('cicero', 'op|fG|sxoMliVujDjVaaa@qaKjoFc|B`pJyQx{D{yEzwFmSruE', 'BBBBBBBB', color4, 'Cicero', '/Cicero-Real-Estate'),

			new Array('manlius', '}tdfGjzaoMfEesO`wCv_CzIapJjaTiChEroS{uE?m_AdwBqyP?', 'BBBBBBBBB', color3, 'Manlius', '/Manlius-Real-Estate'),

			new Array('dewitt', 'acjeGjtooMcBshPwrEqGm_AdwBqyP?cB|aO~xGqGbFuaB`}AewB|j@`]rsAytAhfAfqExiG?', 'BBBBBBBBBBBBB', color2, 'Dewitt', '/Dewitt-Real-Estate'),

			new Array('syracuse', 'a~{eGvtqoMbFuaB`}AewB|j@`]rsAytAhjAxyEhAzrBbxD??n`GwnD?siBz{DmiAa]kmAhCicBw_C}TijB|_AssF', 'BBBBBBBBBBBBBBBB', color4, 'Syracuse', '/Syracuse-Real-Estate'),

			new Array('salina', 'kn{eG|a_pMuy@glA}TijB|_AssFm{H?bBv{Om_CfqEtk@dPpv@j_Aft@dP|nHqcL', 'BBBBBBBBBBB', color3, 'Salina', '/Salina-Real-Estate'),

			new Array('geddes', '}kueGdoapMmiAa]kmAhCwk@or@guHblLe[tjDh}JoiItxCqG?owD', 'BBBBBBBBB', color2, 'Geddes', '/Geddes-Real-Estate'),

			new Array('camillus', 'qmafGxhmpM|fFqwDtxCqG?raMbgAhCbB`uN{wIgCeBeeIyoBmpL', 'BBBBBBBBB', color3, 'Camillus', '/Camillus-Real-Estate'),

			new Array('marcellus', 'u|ydGzttpMcfXvXbB`uNbfXqGcBgfO', 'BBBBB', color4, 'Marcellus', '/Marcellus-Real-Estate'),

			new Array('skan', 'u`seGtdeqMbfXqGcBnyCbaHioF}BtbSeaa@gC?a`P', 'BBBBBBB', color1, 'Skaneateles', '/Skaneateles-Real-Estate'),

			new Array('ono', 'qqleGxpsoM?n`GwnD?siBz{DfE|hRlqZcPmHyyPmdF?iEudRkdPdPbBzrBbxDfC', 'BBBBBBBBBBBB', color1, 'Onondaga', '/Onondaga-Real-Estate'),

			new Array('otisco', 'cpydG~nwpMiE{|Uj}AiCeBa{@pxJiCeBp~GylAbwBeyCvfFgbFbbD', 'BBBBBBBBB', color2, 'Otisco', '/Otisco-Real-Estate'),

			new Array('tully', 'cardGll~oMl~E??fuCd{G?gEocWowNhCbB|hR', 'BBBBBBB', color1, 'Tully', '/Tully-Real-Estate'),

			new Array('laf', '_czdGvwapMgaFiCeB}jQsyGhC?q|Hx}V??xeX_vC?gErcAezAgCiEha@', 'BBBBBBBBBBB', color3, 'Lafayette', '/Lafayette-Real-Estate'),

			new Array('pom', 'acjeGfneoM|`W??ynZadW?bBxnZ', 'BBBBB', color4, 'Pompey', '/Pompey-Real-Estate')
		);
		

		places = new Array();
		for(i=0; i<areas.length; i++) {
			places[areas[i][0]] = createArea(areas[i][1], areas[i][2], areas[i][3], areas[i][4], areas[i][5]);
		}
	}
}
