// JavaScript Document
// JavaScript Document

//General Overlay Collection
var overlays;

overlays = new OverlayCollection('overlays',25);
//Settings
overlays.useLabels = true;
overlays.labelType= 'Numeric';

//Clear Placemarks
overlays.clearPlacemarkListings = function(){
	var container = $('placemarkList');
	container.innerHTML = '';
}

//Show Placemarks
overlays.showPlacemarkListings = function(){
	this.clearPlacemarkListings();
	if(this.length > 0){
		var placemarks = this.getPage(this.currPage);
		for (var i = 0; i < placemarks.length; i++){
			this.addToList(placemarks[i]);
			if(i < placemarks.length)
				this.addDivider();
		}
	}
	this.showPaging();
}

overlays.addDivider = function(){
	var container = $('placemarkList');
	var d= document.createElement('div');
	d.className = 'ListingDividerLine';
	container.appendChild(d);
}

overlays.addToList = function(placemark){
	var container = $('placemarkList');
	var d= document.createElement('div');
	if (placemark.weburl.length){
		if (placemark.weburl.substr(0,7) != 'http://'){
			placemark.weburl = 'http://'+placemark.weburl;
			//alert(p.weburl.substr(0,6));
		}
	}
	/*d.innerHTML += parsePlacemarkData('<div class=\"Explorer_Listing"><b>' + (placemark.logofile.length ? '<img class=\"PropertyPhoto\" src=\"../images/listings/placemark:logofile\"  width="80" height="80" align="left">' : '<img class=\"PropertyPhoto\" src="../images/listings/blank.gif" width="80" height="80" align="left" />') + '<a href="javascript:goToPlacemark(placemark:prikey)">placemark:name</a> (placemark:distance miles)</b><br><br><a href="javascript:goToPlacemark(placemark:prikey)"><img src="placemark:iconimage" align="right" width="24" height="19" border="0"></a><div class=\"explorerListingDescription\">placemark:description<br><br><a href="../listings/index.cfm?action=display&listingID=placemark:prikey&hit=1">More Information</a>&nbsp;|&nbsp;<span id="placemark_itinerary2_placemark:prikey">placemark:itinerary</span>&nbsp;|&nbsp;<a href="javascript:goToPlacemark(placemark:prikey)">View on Map</a></div></div>',placemark);*/
	d.innerHTML += parsePlacemarkData('<div class=\"Explorer_Listing"><b>' + (placemark.logofile.length ? '<img class=\"PropertyPhoto\" src=\"http://crm.visitlex.com/images/member/placemark:logofile\"  width="80" height="80" align="left">' : '<img class=\"PropertyPhoto\" src="../images/listings/blank.gif" width="80" height="80" align="left" />') + '<a href="javascript:goToPlacemark(placemark:prikey)">placemark:name</a> (placemark:distance miles)</b><br><a href="javascript:goToPlacemark(placemark:prikey)"><img src="placemark:iconimage" align="right" width="24" height="19" border="0"></a><div class=\"explorerListingDescription\">placemark:description<br>' + (placemark.weburl.length ? '<a href=\"placemark:weburl\" target=\"_blank\">Website</a>&nbsp;|&nbsp;': '') + '<a href="javascript:goToPlacemark(placemark:prikey)">View on Map</a></div></div>',placemark);
	container.appendChild(d);
}

overlays.showPaging = function(){
	var page = this.currPage;
	var numPages = this.numPages();
	var overlayCollection = this;
	var pagingstr = '<div style=\"float: left; width: 75px\">Page ' + this.currPage + ' of ' + numPages + '</div>';
	pagingstr += '<div style=\"float: right; text-align: right; width: 375px; margin: 0px auto;\">';
	if(page > 1){
		pagingstr += '<a href="" class=\"page_first\">First</a>';
		pagingstr += ' | <a href = "" class=\"page_previous\">Previous</a>';
	}
	else{
		pagingstr += 'First';
		pagingstr += ' | Previous';
	}

	if(page < numPages){
		pagingstr += ' | <a href="" class=\"page_next\">Next</a>';
		pagingstr += ' | <a href="" class=\"page_last\">Last</a>';
	}
	else{
		pagingstr += ' | Next';
		pagingstr += ' | Last';
	}
	pagingstr += '</div>';

	$('paging_top').innerHTML = pagingstr;
	$('paging_bottom').innerHTML  = pagingstr;


	if(page > 1){
		var pagefirst = $$('.page_first');
		pagefirst.each(
			function(a){
				Event.observe(a,'click',function(e){
						overlayCollection.map.showPlacemarks(overlayCollection,1);
						Event.stop(e);
					}
				);
			}
		);

		var pageprevious = $$('.page_previous');
		pageprevious.each(
			function(a){
				Event.observe(a,'click',function(e){
						overlayCollection.map.showPlacemarks(overlayCollection,overlayCollection.currPage-1);
						Event.stop(e);
					}
				);
			}
		);
	}


	if(page < numPages){
		var pagenext = $$('.page_next');
		pagenext.each(
			function(a){
				Event.observe(a,'click',function(e){
						overlayCollection.map.showPlacemarks(overlayCollection,overlayCollection.currPage+1);
						Event.stop(e);
					}
				);
			}
		);


		var pagelast = $$('.page_last');
		pagelast.each(
			function(a){
				Event.observe(a,'click',function(e){
						overlayCollection.map.showPlacemarks(overlayCollection,overlayCollection.numPages());
						Event.stop(e);
					}
				);
			}
		);
	}


	$('paging_top_container').style.display = $('paging_bottom_container').style.display = (numPages >= 1 ? '' : 'none');
}

overlays.getInfoHTML = function(placemark){
	var addr = new Address();
	try{
		addr.loadFromObject(placemark);
	}
	catch(ex){
	}


	var str = new String();
	str = '<div class=\"infoWindowTitle\">placemark:name</div>';
	str += '<div class=\"infoWindowAddress\">' + addr.toHTMLString() + '</div>';
//	str += '<span onclick=\"svp();" class=\"fakelink\">Streetview</span>';
	str += '<ul class=\"infoWindowOptions\">';
//	str += placemark.weburl.length > 0 ? '<li><a href=\"' + this.root +'/webcounter.cfm?listingID=placemark:prikey\" target=\"_blank\">Visit website</a></li>' : '';	
	str += placemark.weburl.length > 0 ? '<li><a href=\"placemark:weburl\" target=\"_blank\">Visit website</a></li>' : '';	
//	str += '<li><a href=\"./index.cfm?action=display&listingid=placemark:prikey&hit=1">More Info</a></li>';
	str += placemark.weburl.length > 0 ? '<li><a href=\"placemark:weburl" target=\"_blank\">More Info!!</a></li>' : '';
	str += '<li><a href=\"javascript:getDirections(placemark:prikey)">Directions</a></li>';
//	str += '<li><a href=\"javascript:directions.directionsFrom(placemark:prikey)\">Directions From Here</a></li>';
	str += '</ul">';
	if(placemark.distance){
			str += '<div class=\"infoWindowSection\">Distance: ' + placemark.distance.toFixed(1) + ' miles</div>';
	}

	return parsePlacemarkData(str,placemark);
}
