// still need:
// left-right alignment, 2 steps: keep right from being too right to be visible then
//				  keep left from being too left to be visible

function j_ADebug (msg) {
	var dv = document.getElementById ('DebugDiv');
	if (dv) {
		dv.innerHTML += msg + "<br>\n";
	}
}

function j_AObjInfo (obj, objname) {
	var ret = '';
	for (i in obj) {
		ret += objname+'.'+i+' = ';
		try {
			var vl = '' + obj[i];
			vl = vl.replace (/&/g, '&amp;');
			vl = vl.replace (/</g, '&lt;');
			vl = vl.replace (/>/g, '&gt;');
			ret += vl;
		} catch (e) {
			ret += 'cant get';
		}
		ret += '<br>\n';
	}
	return ret;
}

var j_AWrapper;
var j_AHeight;
function j_ACommon (src, evt, lnk, pn) {
	if (session.length) { src += 'Ses='+session+';'; }

	var dv = document.getElementById ('CteBigDiv');
	dv.DaveContent = '';

	var fnd = lnk;
	var top = lnk.offsetHeight;
	var left = lnk.offsetWidth;
	var lst;
	while (1) {
		while (fnd) {
			lst = fnd;
			top += fnd.offsetTop;
			left += fnd.offsetLeft;
			fnd = fnd.offsetParent;
			if (dv.offsetParent == fnd) { break; }
		}
		j_AWrapper = fnd;
		if (j_AWrapper) { break; }
		try {
			if (lst.id.match (/^GoToDiv/)) {
				var nam = lst.id.substr (7);
				fnd = document.getElementById(nam);
			}
		} catch (e) {}
		if (!fnd) {
			j_AWrapper = lst;
			break;
		}
	}

	dv.style.top = ''+top+'px';
	dv.style.left = ''+left+'px';

	dv.innerHTML = '<iframe id="j_Aframe" src="'+src+'" onload="j_Asize(this);" FRAMEBORDER="0" SCROLLING="no" onclick="MClose();" style="background-color:orange; width:150px; height:70px;"></iframe>'+
		       '<div style="position:absolute; top:10px; left:10px; visibility:inherit;" id="CteCover">Looking up<br>'+pn+'</div>';
	dv.style.border = 'none';
	dv.style.padding = '0px';
	dv.style.margin  = '0px';
	dv.style.visibility = 'inherit';
	dv.style.width = 'auto';
	dv.style.height = 'auto';

	return false;
}

function j_AAdd (pn, evt, lnk) {
	if (!document.cookie.match (/LabUser=/) && !session.length && !document.cookie.match (/GuestUser=/)) { return true; }
///	var src = offset + '/mshop/PickPart/index.html?Pn='+pn+';';
	var src = '/mshop/PickPart/index.html?Pn='+pn+';';
	j_AHeight = 320;
	j_AUpdateDetail (pn);
	return j_ACommon (src, evt, lnk, pn);
}

function j_AUpdateDetail (pn) {
	if (! pn.match (/^Ss/)) {
		var ldiv = document.getElementById ('sShowPartS');
		if (ldiv) {
			var tsrc;
			tsrc = '/dialysis/sShowPart.html?';
			tsrc += 'Pn='+escape(pn)+';';
			if (session.length) { tsrc += 'Ses='+session+';'; }
			ldiv.innerHTML = '<iframe id="sShowPartI" src="'+tsrc+'" onload="j_AShowPart(this);" style=\"display:none;\"></iframe>';
		}
		var la = document.getElementById ('sSimilarA');
		if (la) {
			if (la.search.match (/[\?;]Pn=.+;/)) {
				la.search = la.search.replace (/([\?;])Pn=[^;]+;/, "$1Pn="+escape(pn)+';');
			}
		}
	}
}

function j_Asize (frm) {
//	force size here.  'auto' is not a good option
	try {
		var dc = false;
		var vset = false;
		if (frm.content && frm.contentDocument.body) {
			dc = frm.contentDocument.body;
			if (dc && dc.clientHeight) {
				if (dc.clientHeight > (j_AHeight/2) && dc.clientHeight < (2*j_AHeight)) { j_AHeight = dc.clientHeight; }
				vset = true;
			}
		}
		if (!vset && frm.contentWindow && frm.contentWindow.document && frm.contentWindow.document.body) {
			dc = frm.contentWindow.document.body;
			if (dc && dc.scrollHeight) {
				if (dc.scrollHeight > (j_AHeight/2) && dc.scrollHeight < (2*j_AHeight)) { j_AHeight = dc.scrollHeight; }
				vset = true;
			}
		}
	} catch (e) {}

	frm.style.width  = '328px';
	frm.style.height = ''+j_AHeight+'px';

	var dv = frm.offsetParent;
	dv.style.border='none';
	dv.style.borderBottom = '1px solid #A0A0A0';
	dv.style.borderRight = '1px solid #A0A0A0';
	dv.style.backgroundColor = '#F8F8F8';
	dv.style.height = '' + (frm.offsetHeight) + 'px';

// lefty-right fixup (left always OK)
	if (dv.offsetLeft + 326+10 > j_AWrapper.offsetWidth) {
		dv.style.left = '' + (j_AWrapper.offsetWidth - 10 - 326) + 'px';
	}

// upsy-downsy fixup
	var Height = 0;
	if (!Height) { try { Height = window.innerHeight; } catch (e) {} }
	if (!Height) { try { Height = document.documentElement.clientHeight; } catch (e) {} }
	if (!Height) { try { Height = document.body.clientHeight; } catch (e) {} }

	var Offset = 0;
	if (!Offset) { try { Offset = window.pageYOffset; } catch (e) {} }
	if (!Offset) { try { Offset = document.documentElement.scrollTop; } catch (e) {} }
	if (!Offset) { try { Offset = document.body.scrollTop; } catch (e) {} }

	if (Height) {
		if (dv.offsetTop + j_AHeight + 10 > Height + Offset) {
			var ntop = Offset + Height - j_AHeight - 10;
			if (ntop < Offset) { ntop = Offset; }
			dv.style.top = '' + ntop + 'px';
		}
	}

	var cover = document.getElementById ('CteCover');
	if (cover) { cover.style.visibility = 'hidden'; }
}

function j_AReq (pn, evt, lnk, jm) {
//	var src = offset + '/mshop/ReqPart/index.html?Pn='+pn+';';
	var src = '/mshop/ReqPart/index.html?Pn='+pn+';Jm='+jm+';';
	j_AHeight = 450;
	j_AUpdateDetail (pn);
	return j_ACommon (src, evt, lnk, pn);
}

function j_slSend(lnk, evt) {
	var item = 'catalog';
	var jm = new Array();
	try {
		item = lnk.search;
		item = unescape(item);
		item = item.substr (25, item.length);
		jm = item.match (/Jm=([^;]*);/i);
		item = item.match (/item=([^;]*);/i);
		item = item[1];
	} catch (e) { item = 'catalog'; }
	if (item.match (/&/)) {
		item = item.replace (/&amp;/, '&');
		item = item.replace (/&reg;/, '®');
	}
	var src = '/mshop/LitReq/index.html?item='+escape(item)+';';
	try {src += 'Jm='+jm[1]+';';} catch(e){}
	j_AHeight = 450;
	return j_ACommon (src, evt, lnk, item);
}

function j_AUpdate (upd) {
	var ig = document.getElementById('CartButton');
	if (!ig) { return; }
	var iloc = ig.src;

	if (upd) {
		iloc = iloc.replace (/shopnow/, 'yourcart');
		ig.src = iloc;
		return;
	}

	iloc = iloc.replace (/yourcart/, 'shopnow');
	ig.src = iloc;
	return;
}

function j_AShowPart (frm) {
	var idiv;
	idiv = document.getElementById ('sShowPartD');
	if (!idiv) { return; }

	var doc;
	doc = frm.contentDocument;
	if (!doc && frm.contentWindow) { doc = frm.contentWindow.document; }
	if (!doc) { return; }

	var fdv = doc.getElementById ('GoToDivsShowPartD');
	if (!fdv) { fdv = doc.body; }
	if (!fdv) { return; }

	idiv.innerHTML = fdv.innerHTML;
	fdv.style.display='none';

	if (idiv.style.display == 'none') {
		idiv.style.display = '';
		try { window.top.scrollBy (0, 85); } catch(e) {}
	}
}

