/**
 * enable/disable map selectors
 */
 
var onoffcount = 0;
 

function enableSearchMap() {
	document.getElementById('search_map').style.display = 'block';
	document.getElementById('info_box').style.display = 'block';
	document.getElementById('map_selectors').style.display = 'none';
}
	
function enableMapSelectors() {
	document.getElementById('search_map').style.display = 'none';
	document.getElementById('info_box').style.display = 'none';
	document.getElementById('map_selectors').style.display = 'block';
}


/**
 * switch on/off all map options
 */
function switchAll() {
	var minZoom = 9;
	var minExtraZoom = 11;
	
	var val = !document.getElementById('selAll').checked;
	//if (document.all) val = !val;
	
	
	if (!val)
	  {
	   getElement('butSwitchCBa').style.display = 'none';
	   getElement('butSwitchCBb').style.display = 'block';
	  }
	else
	  {
	   getElement('butSwitchCBa').style.display = 'block';
	   getElement('butSwitchCBb').style.display = 'none';
	  }
	
	
    onoffcount ++;
    //alert(onoffcount);
    
	var boxes = document.getElementsByTagName('input');
	ids = "";

	for (var i=0; i<boxes.length; i++) {

		if (boxes[i].type=="checkbox" && boxes[i].id.substring(boxes[i].id.length-3,boxes[i].id.length) == 'box') {
			ids += boxes[i].id+" \n";

			boxes[i].checked = val;
			var box = boxes[i];
			var category_id = boxes[i].alt;
			
			if (boxes[i].alt !='')
			if (box.checked) {
				show(category_id);
			} else {
				hide(category_id);
			}
			
			if (box.id =='Feed1box') {
				switchFeed(!val, g1);
			}
			if (box.id =='Feed2box') {
				switchFeed(!val, g2);
			}
			if (box.id =='Wikibox' && map.getZoom()>minExtraZoom-1 && wikipedia ) {
				switchFeed(!val, wikipedia);
			}
			if (box.id =='Panobox' && map.getZoom()>minExtraZoom && wikipedia ) {
				switchFeed(!val, panoramio);
			}
			
		}
		
	}
	
	document.getElementById('selAll').checked = val;
	//alert(ids);

	cluster.replaceMarkers(gmarkers);
	cluster.refresh(true);
}


/**
 * gmap functions
 */

function createMarkerHP(ad_id, point, title, html, category, av_pet, av_smoking, av_children, av_parking, av_handicap, av_internet, av_garden, ad_totalscore, ad_grading, ad_bedrooms, ad_beds) {
	var options = { title: title+" ("+category+")", icon: gicons[category] };		  
	var marker = new FanMarker(point, options);

	// === Store the category and name info as a marker properties ===
	marker.mycategory = category;                                 
	marker.myname = title;
	marker.bubbleInfo = html;
	marker.enabled = true;
	marker.ad_id = ad_id;
	marker.av_pet = av_pet;
	marker.av_smoking = av_smoking;
	marker.av_children = av_children;
	marker.av_parking = av_parking;
	marker.av_handicap = av_handicap;
	marker.av_internet = av_internet;
	marker.av_garden = av_garden;
	marker.ad_totalscore = ad_totalscore;
	marker.ad_grading = ad_grading;
	marker.ad_bedrooms = ad_bedrooms;
	marker.ad_beds = ad_beds;
	
	GEvent.addListener(marker, "mousedown", function() {marker.openInfoWindowHtml(html);});
	gmarkers.push(marker);

	return marker;
}
 
function createTabbedMarker(point,name,tab1,html1,tab2,html2,category) {
	var options = { title: name+" ("+category+")", icon: gicons[category] };		  
	var marker = new FanMarker(point, options);

	// === Store the category and name info as a marker properties ===
	marker.mycategory = category;                                 
	marker.myname = name;
	marker.bubbleInfo = html1;
	GEvent.addListener(marker, "mousedown", function() {
		marker.openInfoWindowHtml(html1);
	});
	gmarkers.push(marker);

	return marker;
}

function createMarker(point,name,html1,category) {
	var options = { title: name+" ("+category+")", icon: gicons[category] };		  
	var marker = new GMarker(point, options);

	// === Store the category and name info as a marker properties ===
	marker.mycategory = category;                                 
	marker.myname = name;
	GEvent.addListener(marker, "mousedown", function() {
	  marker.openInfoWindowHtml(html);
	});
	gmarkers.push(marker);

	return marker;
}


function resetHPExtFilters()
{
  getElement('fAVpets').checked = false;
  getElement('fAVsmoking').checked = false;
  getElement('fAVchildren').checked = false;
  getElement('fAVparking').checked = false;
  getElement('fAVhandicap').checked = false;
  getElement('fAVinternet').checked = false;
  getElement('fAVgarden').checked = false;
  
  getElement('flticochildren').src = 'img/icons-filter/arran-children-off.gif';
  getElement('flticopets').src = 'img/icons-filter/arran-pets-off.gif';
  getElement('flticosmoking').src = 'img/icons-filter/arran-smoking-off.gif';
  getElement('flticoparking').src = 'img/icons-filter/arran-parking-off.gif';
  getElement('flticohandicap').src = 'img/icons-filter/arran-handicap-off.gif';
  getElement('flticointernet').src = 'img/icons-filter/arran-internet-off.gif';
  getElement('flticogarden').src = 'img/icons-filter/arran-garden-off.gif';
  
  jQuery("#sliderrating").slider('option', 'values', [0,5]);
  jQuery("#sliderrating").slider('enable');
  jQuery("#valuserrating").val('0 - 5');
  ratingMin = 0;
  ratingMax = 10;
  
  jQuery("#touristboardgrading").slider('option', 'values', [0,5]);
  jQuery("#touristboardgrading").slider('enable');
  jQuery("#valtouristboardgrading").val('0 - 5');
  gradingMin = 0;
  gradingMax = 5;

  if (!officialVersion)
    {
     jQuery("#sliderbedrooms").slider('option', 'values', [0,defBedroomsMax]);
     jQuery("#sliderbedrooms").slider('enable');
     jQuery("#valbedrooms").val('0 - '+defBedroomsMax);
     bedroomsMin = 0;
     bedroomsMax = defBedroomsMax;
     
     jQuery("#sliderbeds").slider('option', 'values', [0,defBedsMax]);
     jQuery("#sliderbeds").slider('enable');
     jQuery("#valbeds").val('0 - '+defBedsMax);
     bedsMin = 0;
     bedsMax = defBedsMax;
    }
  
  hpExtFilters();
  
  hpExtFiltersUpdateNo();
}



function switchFltIcoOption(eln)
{
 if (getElement('fAV'+eln).checked) nico = '-off';
 else                               nico = '';
 
 getElement('fltico'+eln).src = 'img/icons-filter/arran-'+eln+nico+'.gif';
 
 getElement('fAV'+eln).checked = (!getElement('fAV'+eln).checked);
 
 hpExtFilters();
}



// !Use filters for displaying places on map
function hpExtFilters()
{
 j = 0;
 ttt = 0;
 
 for (var i=0; i<gmarkers.length; i++)
   {
    if (getElement(gmarkers[i].mycategory+'box').checked == true || onoffcount==0)
      {
       j++;
       nmst = true;
       
       if (getElement('fAVpets').checked)
        {
         if (gmarkers[i].av_pet=='0')      nmst = false;
        }
       if (getElement('fAVsmoking').checked)
        {
         if (gmarkers[i].av_smoking=='0')  nmst = false;
        }
       if (getElement('fAVchildren').checked)
        {
         if (gmarkers[i].av_children=='0') nmst = false;
        }
       if (getElement('fAVparking').checked)
        {
         if (gmarkers[i].av_parking=='0')  nmst = false;
        }
       if (getElement('fAVhandicap').checked)
        {
         if (gmarkers[i].av_handicap=='0') nmst = false;
        }
       if (getElement('fAVinternet').checked)
        {
         if (gmarkers[i].av_internet=='0') nmst = false;
        }
       if (getElement('fAVgarden').checked)
        {
         if (gmarkers[i].av_garden=='0')   nmst = false;
        }
        
        if ( gmarkers[i].ad_totalscore!='' && ( (gmarkers[i].ad_totalscore*1) < (ratingMin*1) || (gmarkers[i].ad_totalscore*1) > (ratingMax*1) ) )
          {
           nmst = false;
          }
        if ( gmarkers[i].ad_grading!='' && ( (gmarkers[i].ad_grading*1) < (gradingMin*1) || (gmarkers[i].ad_grading*1) > (gradingMax*1) ) )
          {
           nmst = false;
          }
          
        if (!officialVersion)
        {
         if ( gmarkers[i].ad_bedrooms!='' && ( (gmarkers[i].ad_bedrooms*1) < (bedroomsMin*1) || (gmarkers[i].ad_bedrooms*1) > (bedroomsMax*1) ) )
          {
           nmst = false;
          }
         
         if ( gmarkers[i].ad_beds!='' && ( (gmarkers[i].ad_beds*1) < (bedsMin*1) || (gmarkers[i].ad_beds*1) > (bedsMax*1) ) )
          {
           nmst = false;
          }
             
        }

       
       gmarkers[i].enabled = nmst;
      }
    
    
    
    hpExtFiltersUpdateNo();
   }
  //alert(ttt);
  if (j>0)
    {
     //rebuild the clusters			
     cluster.replaceMarkers(gmarkers);
     cluster.refresh(true);
     
     //alert(j);
    }
}



function hpExtFiltersUpdateNo()
{
 act = 0;
 
 if (getElement('fAVpets').checked) act++;
 if (getElement('fAVsmoking').checked) act++;
 if (getElement('fAVchildren').checked) act++;
 if (getElement('fAVparking').checked) act++;
 if (getElement('fAVhandicap').checked) act++;
 if (getElement('fAVinternet').checked) act++;
 if (getElement('fAVgarden').checked) act++;
 if (ratingMin>0 || ratingMax<10) act++;
 if (gradingMin>0 || gradingMax<5) act++;

  if (!officialVersion)
    {
     if (bedroomsMin>0 || bedroomsMax<defBedroomsMax) act++;
     
     if (bedsMin>0 || bedsMax<defBedsMax) act++;
    }
 
 if (act>0)
   {
    changeDIVcontent('hpactfno', '('+act+')', '');
    
    getElement('butFiltReset').style.display = 'inline';
   }
 else
   {
    changeDIVcontent('hpactfno', '', '');//<font color="#606060">(none)</font>
    
    getElement('butFiltReset').style.display = 'none';
   }
}



// == shows all markers of a particular category, and ensures the checkbox is checked ==
function show(category) {
	for (var i=0; i<gmarkers.length; i++) {
	  if (gmarkers[i].mycategory == category) {
		//gmarkers[i].show();
		gmarkers[i].enabled = true;
	  }
	}
    
    
    
    
	// == check the checkbox ==
	//if (document.getElementById(category+"box"))
	//	document.getElementById(category+"box").checked = true;
}
	
// == hides all markers of a particular category, and ensures the checkbox is cleared ==
function hide(category) {

	for (var i=0; i<gmarkers.length; i++) {
	  if (gmarkers[i].mycategory == category) {
		//gmarkers[i].hide();
		gmarkers[i].enabled = false;
	  }
	}

	// == clear the checkbox ==
	var catBox = document.getElementById(category+"box");
	if (catBox!=null)
		document.getElementById(category+"box").checked = false;

	// == close the info window, in case its open on a marker that we just hid
	map.closeInfoWindow();
	
}

// == a checkbox has been clicked ==
function yav_boxclick(box,category_id) {
    
    if (onoffcount==0)
      {
       switchAll();
       
       box.checked = true;
      }
    
    onoffcount ++;
	
	
	if (box.checked) {
		//show(cat_name_js[category_id]);  - bug with selecting Places to see element when clicking on group Food and drink
		
	  for(var i=0; i<cat_fatherid_js.length; i++){
		if(cat_fatherid_js[i]==category_id){
			show(cat_name_js[i]);
			
			document.getElementById(cat_name_js[i]+"box").checked = true;
		}
	  }
	} else {
		
	   for(var i=0; i<cat_fatherid_js.length; i++){
		if(cat_fatherid_js[i]==category_id){
			hide(cat_name_js[i]);
			
			document.getElementById(cat_name_js[i]+"box").checked = false;
		}
	  }
	}

	//boxclick(box,category_id);	
    
    if (useExtFilters) hpExtFilters();
    
    
	//rebuild the clusters			
	cluster.replaceMarkers(gmarkers);
	cluster.refresh(true);
	
}
	
	
function boxclick(box,category) {


    if (onoffcount==0)
      {
       switchAll();
       
       box.checked = true;
      }
    
    onoffcount ++;
	
    
	if (box.checked) {
	  show(category);
	} else {
	  hide(category);
	}
	
	if (useExtFilters) hpExtFilters();

	//rebuild the clusters
	cluster.replaceMarkers(gmarkers);
	cluster.refresh(true);
}
	
function myclick(i) {
	GEvent.trigger(gmarkers[i],"mouseover");
}
	
// == rebuilds the sidebar to match the markers currently displayed ==
function makeSidebar() {
	var html = "";
	for (var i=0; i<gmarkers.length; i++) {
	  if (!gmarkers[i].isHidden()) {
		html += '<a href="javascript:myclick(' + i + ')">' + gmarkers[i].myname + '</a><br>';
	  }
	}
}

/**
 * Switching on/off feeds
 */
var g1, g2, wikipedia, panoramio;

function switchFeed(visible, overlay) {
	if (!visible) {
		if (map.getZoom()>10) {
			map.addOverlay(overlay);
		}
		
	}
	else {
		map.removeOverlay(overlay);
	}
}

function refreshFeeds() {
	var minZoom = 10;
	var minExtraZoom = 11; 
	
	if (document.getElementById('Feed1box'))
	if (map.getZoom()>minZoom && g1 && document.getElementById('Feed1box').checked)  {
		map.removeOverlay(g1);
		map.addOverlay(g1);
	} else {
		if (g1)
			map.removeOverlay(g1);
	}

	if (document.getElementById('Feed2box'))
	if (map.getZoom()>minZoom && g2 && document.getElementById('Feed2box').checked)  {
		map.removeOverlay(g2);
		map.addOverlay(g2);
	} else {
		if (g2)
			map.removeOverlay(g2);
	}

	if (document.getElementById('Wikibox'))
	if (map.getZoom()>minExtraZoom-1 && wikipedia && document.getElementById('Wikibox').checked)  {
		map.removeOverlay(wikipedia);
		map.addOverlay(wikipedia);
	} else {
		if (wikipedia)
			map.removeOverlay(wikipedia);
	}

	if (document.getElementById('Panobox'))
	if (map.getZoom()>minExtraZoom && panoramio && document.getElementById('Panobox').checked)  {
		map.removeOverlay(panoramio);
		map.addOverlay(panoramio);
	} else {
		if (panoramio)
			map.removeOverlay(panoramio);
	}
 
 //! zoom control - switch to hybrid when zoom > 10
 currentZoom = map.getZoom();
 
 if (currentZoom>10) map.setMapType(G_HYBRID_MAP);
 else                map.setMapType(G_NORMAL_MAP);
}

/**
 * Read the markers from the server
 */ 
function setupMarkersOld() {
	var d = new Date();

	//if (user_id*1 == 0) user_id = "";
	var user_id = "";
	
	GDownloadUrl("../mapdata.xml?user_id="+user_id+"&t="+d.getTime(), function(doc) {
	var bounds = new GLatLngBounds();
	var xmlDoc = GXml.parse(doc);
	var markers = xmlDoc.documentElement.getElementsByTagName("marker");
	  
	for (var i = 0; i < markers.length; i++) {
	  // obtain the attribues of each marker
	  var lat = parseFloat(markers[i].getAttribute("lat"));
	  var lng = parseFloat(markers[i].getAttribute("lng"));
	  var point = new GLatLng(lat,lng);
	  var street1 = markers[i].getAttribute("street1");
	  var street2 = markers[i].getAttribute("street2");
	  var city = markers[i].getAttribute("city");
	  var postcode = markers[i].getAttribute("postcode");
	  var image = markers[i].getAttribute("image");
	  var imagewidth = parseInt(markers[i].getAttribute("imagewidth")*0.75);
	  var imageheight = parseInt(markers[i].getAttribute("imageheight")*0.75);
	  var entryID = markers[i].getAttribute("entryID");
	  var name = markers[i].getAttribute("label");
	  var viewed = markers[i].getAttribute("viewed");
	  var rating = markers[i].getAttribute("rating");
	  var voters = markers[i].getAttribute("voters");
	  var added = markers[i].getAttribute("added");
	  var expires = markers[i].getAttribute("expires");
	  var category = markers[i].getAttribute("icontype");
	  var catID = markers[i].getAttribute("catID");
	  var ad_type = markers[i].getAttribute("ad_type");
	  var ad_desc = markers[i].getAttribute("ad_desc");
	  
	  if (image == "") {
		image="no_image.gif";
		imagewidth="40";
		imageheight="40";
	  }
	  
	  var tab1 = "About";
	  var html1 = "";
	  
	  //marin paid entries
	  
	  if (ad_type=="premium") {
		// a premium entry
		html1 =  "<div class='bubbleInfo'>";
		html1+=  "<a style='position:absolute;margin-left:220px;font-size:10px; ' href='detail.php?id="+entryID+"'>More info&gt;&gt;</a>";
		html1+=  "<a href=detail.php?id="+entryID+"><strong style='font-size:14px;'>"+name+"</strong></a><br />";
		html1+=  "Category: <a href='index.php?catid="+catID+"'>"+category+"</a><br /><br />";
		//html1+=  "<a href=detail.php?id="+entryID+" style='text-decoration:none;border:0px;'>";
		html1+=  "<table border=0><tr><td>";
		html1+=  "<img src=images/"+image+" width="+imagewidth+" height="+imageheight+" border=0 /></a><br />";
		html1+=  "</td><td valign=bottom>";
		html1+=  street1+" "+street2+"<br/>"+city+" "+postcode+"";
		html1+=  "</td></tr></table>";
		html1+=  "<br/>";
		html1+=  ""+ad_desc+" <small>";
		html1+=  "<a href=detail.php?id="+entryID+">Read more</a></small><br /><br /></div>";
	  
	  } else {
		//a free entry
		html1 =  "<div style='width:300px;font-family:verdana,arial,helvetica,sans-serif;font-size:80%;line-height:normal;'><a style='text-decoration:none;border:0px;'><img src=images/"+image+" width="+imagewidth+" height="+imageheight+" border=0 /></a><br /><a><strong>"+name+"</strong></a><br />Category: <a href='index.php?catid="+catID+"'>"+category+"</a><br /><br />"+ad_desc+" <small><a href=detail.php?id="+entryID+">Read more</a></small><br /><br /></div>";
	  }
	  //marin paid entries
	  
	  var tab2 = "Statistics";
	  var html2 = "<div style='font-family:verdana,arial,helvetica,sans-serif;font-size:80%;line-height:normal;'><table><tr><td>Viewed: </td><td><strong>"+viewed+"</strong></td></tr><tr><td>Rating:</td><td>"+rating+" ("+voters+" votes)</td></tr><tr><td>Date Added:</td><td>"+added+"</td></tr><tr><td>Date Expires:</td><td>"+expires+"</td></tr></table><br /><br /><small><a href=detail.php?id="+entryID+">More Information</a></small><br /><br /></div>";
	  
	
	  // create the marker - auto pushed in gmarkers
	  var marker = createTabbedMarker(point,name,tab1,html1,tab2,html2,category);
	  marker.enabled = true;
	  marker.ad_id = entryID;
	  bounds.extend(point);
	}
	
	// == show or hide the categories initially ==
	for(var cat=0; cat<cat_name_js.length; cat++){
		show(cat_name_js[cat]);
	}
	
	cluster=new ClusterMarker(map, { markers:gmarkers } );
	cluster.refresh();

	if (window.fitToMarkers) {

		window.fitToMarkers(bounds);
	}
	
	//setup featured entries on the main page
	setupFeaturedEntries();
	});
	
	
	
	
}


/**
 * Text functions
 */
// ===== list of words to be standardized =====
    var standards = [   ["road","rd"],   
                        ["street","st"], 
                        ["avenue","ave"], 
                        ["av","ave"], 
                        ["drive","dr"],
                        ["saint","st"], 
                        ["north","n"],   
                        ["south","s"],    
                        ["east","e"], 
                        ["west","w"],
                        ["expressway","expy"],
                        ["parkway","pkwy"],
                        ["terrace","ter"],
                        ["turnpike","tpke"],
                        ["highway","hwy"],
                        ["lane","ln"]
                     ];

    // ===== convert words to standard versions =====
    function standardize(a) {
      for (var i=0; i<standards.length; i++) {
        if (a == standards[i][0])  {a = standards[i][1];}
      }
      return a;
    }

    // ===== check if two addresses are sufficiently different =====
    function different(a,b) {
      // only interested in the bit before the first comma in the reply
      var c = b.split(",");
      b = c[0];
      // convert to lower case
      a = a.toLowerCase();
      b = b.toLowerCase();
      // remove apostrophies
      a = a.replace(/'/g ,"");
      b = b.replace(/'/g ,"");
      // replace all other punctuation with spaces
      a = a.replace(/\W/g," ");
      b = b.replace(/\W/g," ");
      // replace all multiple spaces with a single space
      a = a.replace(/\s+/g," ");
      b = b.replace(/\s+/g," ");
      // split into words
      awords = a.split(" ");
      bwords = b.split(" ");
      // perform the comparison
      var reply = false;
      for (var i=0; i<bwords.length; i++) {
        //GLog.write (standardize(awords[i])+"  "+standardize(bwords[i]))
        if (standardize(awords[i]) != standardize(bwords[i])) {reply = true}
      }
      //GLog.write(reply);
      return (reply);
    }

/**
 * Geocoding place function
 */

      // ====== Plot a marker after positive reponse to "did you mean" ======
      function place(lat,lng) {
        var point = new GLatLng(lat,lng);
        map.setCenter(point,14); 
        //map.addOverlay(new GMarker(point));
        var html1 = "<b>Search results:</b><br/><br/>"+document.getElementById("message").innerHTML;
        var marker = createTabbedMarker(point,"Search result","About",html1,"test1","test2","Shop");
	 	marker.enabled = true;
        
        document.getElementById("message").innerHTML = document.getElementById("origmessage").innerHTML;
		
		cluster.replaceMarkers(gmarkers);
		cluster.refresh();
		
		marker.openInfoWindowHtml(html1);
		
		//window.setTimeout(setupMarkers, 0);
      }


/**
 * Zoomback !!! 
 */
var zoomBack = 0;
var mapCenter = null;
var gotoZoomBackLevel = 0;
var gotoMapCenter = null;

function initZoomBack(level) {
	zoomBack = map.getZoom();
	gotoZoomBackLevel = zoomBack;
	mapCenter = map.getCenter();
	gotoMapCenter = mapCenter;
}

function refreshZoomBack() {
	var curZoom = map.getZoom();
	if (zoomBack > curZoom) {
		//zoom out
		document.getElementById('zoomBack').style.visibility = 'hidden';
	} else {
		//zoom in
		if ( curZoom - zoomBack > 3 ) {
			document.getElementById('zoomBack').style.visibility = 'visible';
			gotoZoomBackLevel = zoomBack;
			gotoMapCenter = mapCenter;
		}
	}
	zoomBack = curZoom;
	mapCenter = map.getCenter();
}

function goZoomBack() {
	map.setCenter( gotoMapCenter, gotoZoomBackLevel );
}

// change map type for different zoom
function refreshMapType() {
	var curZoom = map.getZoom();
	
	if (map.getCurrentMapType()== G_SATELLITE_MAP || map.getCurrentMapType()== G_HYBRID_MAP) {
		return;
	}
	
	if (curZoom > 10) {
		
		if (map.getCurrentMapType()!=G_NORMAL_MAP) 
			map.setMapType(G_NORMAL_MAP);
		
		
	} else {
		if (map.getCurrentMapType()!=G_PHYSICAL_MAP) 
			map.setMapType(G_PHYSICAL_MAP);
		
	}
}

/**
 * Intialization
 */

if (GBrowserIsCompatible()) {
	
	var map;
    var geo;
    var reasons=[];
    var markersArray=[];
	
      var gmarkers = [];
      var baseIcon = new GIcon();
          baseIcon.iconSize=new GSize(32,32);
          baseIcon.shadowSize=new GSize(56,32);
          baseIcon.iconAnchor=new GPoint(16,32);
          baseIcon.infoWindowAnchor=new GPoint(16,0);
      
      // === Create an associative array of GIcons() ===
	  //yav categories load from DB
	  
	  var gicons = [];
	  
	  for(var i=0; i<cat_name_js.length; i++){
		 gicons[cat_name_js[i]] = new GIcon(baseIcon, "http://www.cuppatours.com/forms_icons/"+cat_image_js[i], null, null);
	  }
	
}

/**
 * Setup the featured entries on the HP
 * show bubble on hover
 */

showFeatured = function(fEntry) {
	
	if (fmarkersSetup && fmarkers[fEntry] && fmarkers[fEntry].openInfoWindowHtml) {
		fZoom = map.getZoom();
		fCenter = map.getCenter();
		map.setCenter( fmarkers[fEntry].origPoint,  11);
		map.openInfoWindowHtml(fmarkers[fEntry].origPoint, fmarkers[fEntry].bubbleInfo);
	}
}

hideFeatured= function(fEntry) {
	map.closeInfoWindow();
	map.setCenter(fCenter, fZoom);
}

fmarkers = new Array();
fmarkersSetup = false;

function setupFeaturedEntries() {

	if (!document.getElementById('featEntry-0-id')) {
		//alert('not found');
		return;
	}
	var gmarkers = cluster._mapMarkers;
	
	for (var f=0;f<4;f++) {
		var f_id = getElement('featEntry-'+f+'-id').className;
		for (var m=0;m<gmarkers.length;m++) {
			if (gmarkers[m].ad_id == f_id) {
				fmarkers[f] = gmarkers[m];
				break;
			}
		}
	}
	fmarkersSetup =true;
}
	
function saveMapPosition() {
	var c = map.getCenter();
	jar.put('pos', {
		'zoom': map.getZoom(),
		'lat': c.lat(),
		'lng': c.lng()
	});
}
