/***********************************************
* IFrame SSI script II- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
* Visit DynamicDrive.com for hundreds of original DHTML scripts
* This notice must stay intact for legal use
***********************************************/

//The ID of the IFRAME you wish to dynamically resize to match its content height.
var iframeIdToResize;

// Should script hide iframe from browsers that don't support this script (non IE5+/NS6+ browsers. Recommended):
var iframehide="yes";

var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
var FFextraHeight=parseFloat(getFFVersion)>=0.1? 16 : 0 //extra height in px to add to iframe in FireFox 1.0+ browsers

function resizeCaller() {
	var dyniframe = new Array();
	if (document.getElementById) {
		resizeIframe(iframeIdToResize);
	}

	// reveal iframe for lower end browsers? (see var above):
	if ((document.all || document.getElementById) && iframehide=="no") {
		var tempobj = document.all ? document.all[iframeIdToResize] : document.getElementById(iframeIdToResize);
		tempobj.style.display="block";
	}
}

function resizeIframe(frameid) {
	var currentfr=document.getElementById(frameid);
	if (currentfr && !window.opera) {
		currentfr.style.display="block";
		if (currentfr.contentDocument) {
			if (currentfr.contentDocument.body.offsetHeight) {
				// Firefox
				currentfr.height = currentfr.contentDocument.body.offsetHeight + "px";
				currentfr.style.height = currentfr.contentDocument.body.offsetHeight + "px";
			}
			else if (currentfr.contentDocument.body.scrollHeight) {
				// Netscape 6+
				currentfr.height = currentfr.contentDocument.body.scrollHeight + "px";
				currentfr.style.height = currentfr.contentDocument.body.scrollHeight + "px";
			}
		}
		else if (currentfr.Document && currentfr.Document.body.scrollHeight) {
		    // IE5+ syntax for Windows
			currentfr.height = currentfr.Document.body.scrollHeight + "px";
			currentfr.style.height = currentfr.Document.body.scrollHeight + "px";
		}
		else if (currentfr.document && currentfr.document.body.scrollHeight) {
		    // IE5+ syntax for Mac OS X (case added by Eric Chan)
			currentfr.height = currentfr.document.body.scrollHeight + "px";
		}
		
		if (currentfr.addEventListener) {
			// DOM Level-2 event handling, supported by Firefox and Netscape 6+
			currentfr.addEventListener("load", readjustIframe, false);
		}
		else if (currentfr.attachEvent) {
			// IE4+ event handling
			currentfr.detachEvent("onload", readjustIframe); // Bug fix line
			currentfr.attachEvent("onload", readjustIframe);
		}
	}
}

function readjustIframe(loadevt) {
	var crossevt=(window.event)? event : loadevt;
	var iframeroot=(crossevt.currentTarget)? crossevt.currentTarget : crossevt.srcElement;
	if (iframeroot) {
		resizeIframe(iframeroot.id);
	}
}

function loadintoIframe(iframeid, url) {
	if (document.getElementById) {
		document.getElementById(iframeid).src=url;
	}
}

function setiFrameHeight(iframeId) {
	iframeIdToResize = iframeId;
	if (window.addEventListener) {
		// DOM Level-2 event handling, supported by Firefox and Netscape 6+
		window.addEventListener("load", resizeCaller, false);
	}
	else if (window.attachEvent) {
    	// IE4+ event handling
		window.attachEvent("onload", resizeCaller);
	}
	else {
    	// IE5+ on Mac
		window.onload=resizeCaller;
	}
}
