//<![CDATA[
/* Global Vars */
var xOffset = 0;
var yOffset = -5;
var URL_MAP_JOB = "/MapJob.aspx?index=";
//var jobMultiMapFloat; = new MapFloater('divMultiJobMapFloat');
//var jobSingleMapFloat = new MapFloater('divSingleJobMapFloat', 'iframeSingleJobMapFloat');
/* //Global Vars */

/* Public Methods */
function MoveToOpener(opener) {
	if (typeof jobSingleMapFloat != 'undefined') {
		jobSingleMapFloat.MoveToOpener(opener);
	}
}
function LoadSingleJobMap(nJobIndex) {
	if (typeof elmiFrameMapJob != 'undefined') {		
		var iframe = eval('window.frames.' + elmiFrameMapJob);
		if (iframe) {
				if (! iframe.LoadSingleJobMap) { // iframe API not loaded, set src to instantiate onload method
				iframe.location.href = URL_MAP_JOB + nJobIndex;
			}
				else { // iframe API loaded, call method directly
				iframe.LoadSingleJobMap(nJobIndex);
			}
		}
	}
}
function ShowJobMapNumber(nJobNo) {
	if (typeof elmiFrameMapSearchResults != 'undefined') {
		var iframe = eval('window.frames.' + elmiFrameMapSearchResults);
		if (typeof iframe != 'undefined' && typeof iframe.ShowJobMapNumber != 'undefined') {	
			iframe.ShowJobMapNumber(nJobNo);
		}
	}
}
function toggleMultiMap(displayFlag) {
	if (typeof jobMultiMapFloat != 'undefined') { toggleVisibility(jobMultiMapFloat.targetObj_, displayFlag); }
}
function MoveToMultiMap() {
	if (typeof jobMultiMapFloat != 'undefined') {
		var floaterPos = getElementPagePos(jobMultiMapFloat.targetObj_);		
		if (floaterPos.pageY < 0) { //if floater y hidden, scroll window to top of floater
			window.scrollTo(0, floaterPos.y);	
		}
	}
}
/* //Public Methods */

/* MapFloater Obj */
function MapFloater(targetObj, iFrameObj){
	this.targetObj_ = targetObj;
	//iframe background needed for IE6 ad/iframe/dropdown overlap
	this.iFrameObj_ = iFrameObj || null;
}
MapFloater.prototype.Show = function() {
	this.Hide();
	//toggle iframe
	if (this.iFrameObj_ != null) {
		toggleVisibility(this.iFrameObj_, 'block');			
	}	
	toggleVisibility(this.targetObj_, 'block');	
};
MapFloater.prototype.Hide = function() {
	//toggle iframe
	if (this.iFrameObj_ != null) {
		toggleVisibility(this.iFrameObj_, 'none');			
	}
	toggleVisibility(this.targetObj_, 'none');	
};
MapFloater.prototype.MoveToOpener = function(openerObj) {
	var offsetYDelta = 0;	
	//need to show first inorder to determine div dimensions;	
	toggleVisibility(this.targetObj_, 'block');	
	var floaterSize = getElmSize(this.targetObj_);
	toggleVisibility(this.targetObj_, 'none');	
	var openerPosition = getElementPagePos(openerObj);
	var winClientHeight = getWindowSize().height || 0;	
	var floaterY = openerPosition.pageY + floaterSize.height;
	//determine delta for window height to ensure floater is not cut off by window
	if (floaterY > winClientHeight) {
		offsetYDelta = (floaterY - winClientHeight);
	}	
	var openerSize = getElmSize(openerObj);	
	var newXCoordinate = openerPosition.parentX + openerSize.width + xOffset;
	var newYCoordinate = (openerPosition.parentY + yOffset) - offsetYDelta;	
	if (this.iFrameObj_ != null) {
		var iframeElm = getElm(this.iFrameObj_);		
		if (iframeElm) {
			if (iframeElm.style) {
				iframeElm.style.width = floaterSize.width + 'px';
				iframeElm.style.height = floaterSize.height + 'px';				
			}			
		}
		moveObject(this.iFrameObj_, newXCoordinate, newYCoordinate);						
	}
	moveObject(this.targetObj_, newXCoordinate, newYCoordinate);
	this.Show();
};
/* //MapFloater Obj */
//]]>