﻿    // JScript File
var map = null;
var bounds = null;
var markers = new Object();
var htmls = new Array;
var tooltip = document.createElement("div");
var orgHeight;
var async_count = 0;
var startTime = 0;
var statusMsgs = false;
var startPos = null;
var points = new Array();
var zoomLimited = false;
var Properties = new Object();
var totalLength=0;
var lastHTML = "";



function load() 
{       
    
    if (GBrowserIsCompatible()) 
    {
        jQuery('#map').jmap('init',{'mapType':'map','mapCenter':[41.930922,-87.695103], 'mapZoom':15},map_callback);	
				      
    }
		 
}

function map_callback(gmap) {
	map = gmap;
	
	ajaxLoader();      
}
var result;

function ajaxLoader() {
	
	$.blockUI({ message: '<div><img src="/images/loading.gif" /> <br> Loading ...</div>',css:{width:'auto',background:'#FFF',padding:'20px','font-size':'18pt'} });
	
	
	var data = 'area='+escape($("#nparea").val())+'&';
	data += 'bdrm='+$("#npbdrm").val()+'&';
	data += 'btrm='+$("#npbtrm").val()+'&';
	data += 'npminr='+$("#npminr").val()+'&';
	data += 'npmaxr='+$("#npmaxr").val()+'&';
	data += 'aptid='+$("#npaptid").val()+'&';
	if($("#npPetC").attr('checked') == "checked")
		data += 'xPetsC=Cats&';
	if($("#npPetD").attr('checked') == "checked")
		data += 'xPetsD=Dogs&';
	var d = new Date();
	
	 if($("#nparea").val() == 'Any') {
			map.setZoom(12); 	
	 } else {
		  map.setZoom(14);
	 }
	 
	 
	$.ajax({
  type: "POST",
	data:data,
  url: "/search/map?response=json"+"&t="+d.getTime(),
	dataType : "json",
  success: function(data){
	 $.unblockUI();
	 
		var first = true;
		totalLength = data.length;
		for (x in data) {
		if(x == "find") {
			continue;
		}
		row = data[x];
		if(first) {
			map.clearOverlays();
			map.panTo(new GLatLng(row['lat'],row['long']));
			first = false;
			
			var office1 = '<div style="color:#AC9978;">Southport Office<br>3338 North Southport<br>\
								Chicago, IL 60657<br>\
								773/880-1492<br>\
								Fax 773/880-1493<br>\
								<a class="wtu fs9" href="/emailus" target="_blank"> email us </a>\
								</a>';
								
	var office2 = '<div style="color:#AC9978;">River West Office Office<br>821 North Milwaukee Ave<br>\
								Chicago, IL 60622<br>\
								312/433-9100<br>\
								Fax 312/433-9105<br>\
								<a class="wtu fs9" href="/emailus" target="_blank"> email us </a>\
								</a>';
	  
		var gIcon = new GIcon();

		gIcon.iconSize = new GSize(16, 16);
		gIcon.image="/favicon.ico";
		gIcon.iconAnchor = new GPoint(6, 20);
		gIcon.infoWindowAnchor = new GPoint(5, 1);	
		
	$('#map').jmap('AddMarker',{
													'pointLatLng':[41.943931,-87.664247],
													'pointHTML':office1,
													'pointIcon':gIcon
			 });		 
			  
	$('#map').jmap('AddMarker',{
													'pointLatLng':[41.896788,-87.655951],
													'pointHTML':office2,
													'pointIcon':gIcon
			 });

			
		}
		var html = data[x]['htmlView'];
		lastHTML = html;
		if(row['lat'] != 0 && row['long'] != 0 ) {
			$('#map').jmap('AddMarker',{
													'pointLatLng':[row['lat'], row['long']],
													'pointHTML':row['htmlView']
			 },function (marker) { if(totalLength  == 1) { marker.openInfoWindow(lastHTML); } });
			}
		}
		
  },
	error: function () {
		alert('Unable to communicate with server');
		$.unblockUI();
	}
});
	
	
	return false;
}

function MarkerClicked(marker,id) {
}

function readQueryString(key)
{ 
    var qs = location.search.substring(1,location.search.length)
    //There was no query string we are done
    if (qs.length == 0) 
        return "";

    qs = qs.replace(/\+/g, ' ');
    var args = qs.split('&');
	
    // split out each name=value pair
    for (var i=0;i<args.length;i++) 
    {
        var pair = args[i].split('=');
	    var name = unescape(pair[0]);
	   
	    if (name == key)
	    {
	        if (pair.length == 2)
		        return unescape(pair[1]);
	        else
		        return "";
        }    		
    }
    return "";
}

function load_map (div,address) {
    var html = address;
    if (GBrowserIsCompatible())
    {
        $('#'+div).jmap('init',{'mapType':'map','mapCenter':[41.930922,-87.695103], 'mapZoom':16},function (map) {
           $('#'+div).jmap('SearchAddress', {
								'query': address,
								'returnType': 'getLocations'
								}, function(result, options) {

									var valid = Mapifies.SearchCode(result.Status.code);
									if (valid.success) {

										jQuery.each(result.Placemark, function(i, point){
										$('#'+div).jmap('AddMarker',{
											'pointLatLng':[point.Point.coordinates[1], point.Point.coordinates[0]],
											'pointHTML':html
											});
                                                                                        map.panTo(new GLatLng(point.Point.coordinates[1],point.Point.coordinates[0]));
										});


									}

								});
        });

    }
}

function load_map_bylat_long (div,lat,long) {

    if (GBrowserIsCompatible())
    {
        $('#'+div).jmap('init',{'mapType':'map','mapCenter':[41.930922,-87.695103], 'mapZoom':16},function (map) {
           $('#'+div).jmap('AddMarker',{
													'pointLatLng':[lat,long]
			 });
                         map.panTo(new GLatLng(lat,long));

        });

    }
}
