function addInfoWindowAndDescriptionToMarker(marker,info,actionUrl){
	GEvent.addListener(marker, "click", function() {
    setTimeout(function() {
      new Ajax.Request(actionUrl, {asynchronous:true,
                                   evalScripts:true,
                                   onLoading:function(request){Layer.show('glayer', Effect.Appear, {duration: 0.2});},
                                   onComplete:function(request){Layer.hide('glayer', Effect.Fade, {duration: 0.2});}
                                   });
                           }, 200);
    marker.openInfoWindowHtml(info);
    });
	return marker;
}

function durationFunc(func, t) {
  setTimeout(function() {
    eval(func);
  }, parseInt(t));
}

function makeUpdateToViewButton() {
    var mapDiv = document.getElementById("map");
    var mapDivs = mapDiv.childNodes;
    var imgDiv = mapDivs[0];
    var buttonDiv;
    buttonDiv = document.createElement("div");
    buttonDiv.setAttribute("id", "div_updateToView");
    buttonDiv.innerHTML = "<span id='button_updateToView'></span>";
    mapDiv.childNodes[4].appendChild(buttonDiv);
}

var descriptionsHeight = 0;
function escapeDescriptionsHeight() {
	descriptionsHeight = $('descriptions').style.height;
}
function setDescriptionsHeight() {
	$('descriptions').style.height = descriptionsHeight;
}

function setElementHeight(execType) {
  if (execType == 1) {
    resizeElementHeight(['map','glayer','side','result_lists','side2','descriptions'], [65,65,65,65,65,65]);
  } else {
    resizeElementHeight(['side2','descriptions'], [65,65]);
  }
}

function resizeElementHeight(elementIds, offsetBottoms) {
  var spool = [];

  if (typeof(elementIds) == "string") {
    elementIds = [elementIds];
  }
  if (typeof(offsetBottoms) == "string") {
    offsetBottoms = [parseInt(offsetBottoms)];
  }

  for (var i = 0; i < elementIds.length; i++) {
    var element = document.getElementById(elementIds[i]);
    if (element) {
      spool.push(element.style.display);
      var visible = (element.style.display != 'none') ? true : false;
      if (!visible) {
        element.style.display = '';
      }
    }
  }
  for (var i = 0; i < elementIds.length; i++) {
    var element = document.getElementById(elementIds[i]);
    if (element) {
    	var offset = 0;
    	for (var elem = element; elem != null; elem = elem.offsetParent) {
    		offset += elem.offsetTop;
    	}
    	var windowHeight = getWindowHeight();
    	var height = windowHeight - offset - offsetBottoms[i];
    	if (height >= 0) {
    		element.style.height = height + "px";
    	}
      //alert('element(' + element.id + ').height=' + element.style.height);
    }
  }
  for (var i = 0; i < elementIds.length; i++) {
    var element = document.getElementById(elementIds[i]);
    if (element) {
      element.style.display = spool[i];
    }
  }
}

function getWindowHeight() {
	if (window.self && self.innerHeight) {
		return self.innerHeight;
	}
	if (document.documentElement && document.documentElement.clientHeight) {
		return document.documentElement.clientHeight;
	}
	return 0;
}

