//--- START IFRAME MOD ---
/**
 * Set the iframe's id in a custom hs variable
 */
hs.callingFrameId = 'iframeBody';

/**
 * Override to also look for elements in the iframe
 */
hs.$ = function (id) {
	var iframe = document.getElementById(hs.callingFrameId);
	var iDoc = iframe.contentDocument || iframe.contentWindow.document;
	
	if (document.getElementById(id)) return document.getElementById(id);
	else if (iDoc.getElementById(id)) {
		// workaround for IE's missing importNode():
		iEl = iDoc.getElementById(id);
		return hs.createElement(iEl.tagName, { className: iEl.className, innerHTML: iEl.innerHTML } );
	}
	return null;
};

/**
 * Override to look for anchors within the iframe
 */
 hs.getAdjacentAnchor = function(key, op) {
	var iframe = document.getElementById(hs.callingFrameId);
	var iDoc = iframe.contentDocument || iframe.contentWindow.document;
	
	var aAr = iDoc.getElementsByTagName('A'), hsAr = {}, activeI = -1, j = 0;
	for (i = 0; i < aAr.length; i++) {
		if (hs.isHsAnchor(aAr[i]) && ((hs.expanders[key].slideshowGroup == hs.getParam(aAr[i], 'slideshowGroup')))) {
			hsAr[j] = aAr[i];
			if (hs.expanders[key] && aAr[i] == hs.expanders[key].a) {
				activeI = j;
			}
			j++;
		}
	}
	return hsAr[activeI + op];
};

/**
 * Override to add the offset of the iframe itself
 */
hs.position = function(el)	{ 
	var parent = el;	
	var p = { x: parent.offsetLeft, y: parent.offsetTop };
	while (parent.offsetParent)	{
		parent = parent.offsetParent;
		p.x += parent.offsetLeft;
		p.y += parent.offsetTop;
		if (parent != document.body && parent != document.documentElement) {
			p.x -= parent.scrollLeft;
			p.y -= parent.scrollTop;
		}
	}
	
	if (!/IFRAME/.test(el.tagName)) {
		var iframePos = hs.position(document.getElementById(hs.callingFrameId));
		p.x += iframePos.x;
		p.y += iframePos.y;	
	}
	
	return p;
};
//-- END IFRAME MOD
