var j_Cclicked = false;
var j_Cx;
var j_Cy;

function j_Acte (lnk, evt) {
	if (!lnk.hasChildNodes()) return true;
	if (lnk.childNodes[0].nodeName != 'IMG') return true;
	j_Ccte(lnk.childNodes[0], evt);
	return false;
}

function j_Ccte (img, evt) {
	var src = img.src.replace (/\/([^\/]+)\.(jpg|gif)$/, '/big/$1.html');
	if (img.id && img.id.length) src=src.replace (/[^.\/]+\.([^.]+)$/, img.id+'.$1');
	var dv = document.getElementById('CteBigDiv');
	dv.DaveContent = '';
	dv.style.visibility = 'hidden';
	dv.innerHTML = '<iframe id="src" src="'+src+'" onload="j_Csize(this);" onerror="j_CEload(this);" FRAMEBORDER="0" SCROLLING="no" onclick="MClose();"></iframe>'+
		       '<div style="position:absolute; top:0px; left:0px; border:thin solid orange; padding:10px; visibility:hidden; font-weight:bold; background-color:white;" id="CteSrcCover">Loading Image</div>';
	
	dv.style.top = '0px';
	dv.style.zIndex = 1;
	dv.style.width = '100px';
	j_Cclicked = true;

	j_Cx = 20;
	j_Cy = 20;
	try {	
		j_Cx = evt.x;
		j_Cy = evt.y;
		if (!evt.x) j_Cx = evt.layerX;
		if (!evt.y) j_Cy = evt.layerY;
	} 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) {;}
	dv.style.top = ''+Offset+'px';
	dv.style.left = '0px';

	dv.style.visibility = 'inherit';
	dv.style.zIndex = 40;
	try { document.getElementById('CteSrcCover').style.visibility = 'inherit'; } catch(e) {;}
}

function j_Csize (frm) {
	try { document.getElementById('CteSrcCover').style.visibility = 'hidden'; } catch(e) {;}
	var dv = document.getElementById('CteBigDiv');
	if (!j_Cclicked) return;
	var width = 0;
	var height = 0;
	var x = frm.document;
	if (x) {
		var y = x.getElementById ('CteInSide');
		if (y) {
			height = y.clientHeight;
			width = y.clientWidth;
		}
	}
	if (!width) {
		if (!x) x = frm.contentDocument;
		if (x) {
			x = x.documentElement;
			if (x && x.offsetWidth) {
				width = x.offsetWidth;
				height = x.offsetHeight;
			}
		}
	}
	try {
		width = frm.contentWindow.document.images[0].width;
		var wid2 = frm.contentWindow.document.body.scrollWidth;
		height = frm.contentWindow.document.body.scrollHeight;
		if (wid2 > width) width = wid2;
	} catch(e) {;}
	if (width) {
		dv.style.borderColor = '#A0A0A0';
		dv.style.borderStyle = 'solid';
		dv.style.borderWidth = '0px 1px 1px 0px';
//		dv.style.border = '2px solid #A0A0A0';
		dv.style.width = '' + width + 'px';
		dv.style.height = '' + height + 'px';
		dv.style.margin = '0px';
		dv.style.padding = '0px';
		frm.style.margin = '0px';
		frm.style.padding = '0px';
		frm.style.width = '' + width + 'px';
		frm.style.height = '' + height + 'px';
		j_CKeepOnPage (dv);
		
// top left jimbo:
		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) {;}
		dv.style.top = ''+Offset+'px';
		dv.style.left = '0px';
// end top left jimbo
		dv.style.visibility = 'inherit';
		dv.style.zIndex = 40;

		try {
			var ins;
			try { ins = dv.childNodes[0].contentWindow.document.getElementById('CteInside'); } catch(e){;}
			if (!ins) try { ins = dv.childNodes[0].contentWindow.document.body; } catch(e){;}
			var l = width-19;
			ins.innerHTML = ins.innerHTML.replace (/<img/i, '<img GALLERYIMG="no"');
			ins.innerHTML += '<div style="position:absolute; left:'+l+'px; width:19px; border:none; margin:0px; padding:0px; top:0px;"><img src="/gg/x.gif" width="19" height="17" onclick="BCloseDiv();" /></div>';
		} catch (e) {
			;
		}
	}
		
}

function j_CClose () {
	var dv = document.getElementById('CteBigDiv');
	dv.style.visibility = 'hidden';
}

function j_CObjInfo (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;
}

function j_CObjInfoHtml (obj, objname) {
	var ret = '';
	for (i in obj) {
		ret += objname+'.'+i+' = '+obj[i]+'<br>\n';
	}
	return ret;
}

function j_CDebugMsg (msg) {
	var dv = $('DebugDiv');
	if (dv) dv.innerHTML += msg + '<br />\n';
}

function j_CDebugEsc (msg) {
	msg = msg.replace (/&/g, '&amp;');
	msg = msg.replace (/</g, '&lt;');
	msg = msg.replace (/>/g, '&gt;');
	j_CDebugMsg (msg);
}

function j_CKeepOnPage (dv) {
	return;
	try {	
		var vtop;
		var vleft;
		if (window.pageYOffset) {
			vtop  = window.pageYOffset;
			vleft = window.pageXOffset;
		} else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) {
			vtop  = document.body.scrollTop;
			vleft = document.body.scrollLeft;
		} else if (document.documentElement && typeof(document.documentElement.scrollTop) == 'number') {
			vtop  = document.documentElement.scrollTop;
			vleft = document.documentElement.scrollLeft;
		} else {
			vtop  = 0;
			vleft = 0;
		}
	
		var hgt = window.innerHeight;
		var wid = window.innerWidth;
		if (!window.innerHeight) hgt = document.documentElement.clientHeight;
		if (!window.innerWidth)  wid = document.documentElement.clientWidth;
		
		var dhgt = Math.floor(dv.style.height.replace (/[^0-9]+/g, ''));
		if ((j_Cy + dhgt) > (vtop + hgt)) j_Cy = vtop + hgt - dhgt - 30;
		if (j_Cy < 10) j_Cy = 10;
		
		var dwid = Math.floor(dv.style.width.replace (/[^0-9.]+/g, ''));
		if ((j_Cx + dwid + 30) > (vleft + wid)) j_Cx = vleft + wid - dwid - 30;
		if (j_Cx < 10) j_Cx = 10;

		dv.style.top = '' + (j_Cy+10) + 'px';
		dv.style.left = '' + (j_Cx+10) + 'px';
	
	} catch (e) {
	}
}

function j_CEload (frm) {
//	alert ('error loading '+frm.src);
}


var j_RCin = false;
function j_RowClick (row, evt) {		// also might try style.backgroundColor ~= 'white'
	try { if (evt.target.rowSpan     > 1) return; } catch (e) {;}
	try { if (evt.srcElement.rowSpan > 1) return; } catch (e) {;}
	if (j_RCin) return;
	j_RCin = true;
	
	var ret = false;

	try { ret = j_RC(row, evt); }
	catch (e) {
		ret = false;
	}
	
	j_RCin = false;
	return;
}

function j_RC (row, evt) {
	try { if (evt.srcElement.tagName == 'IMG' || evt.srcElement.tagName == 'A') { return false; } } catch(e) {;}
	try { if (evt.target.nodeName    == 'IMG' || evt.target.nodeName    == 'A') { return false; } } catch(e) {;}
	var fnd;
	for (col in row.childNodes) {
		var chld = row.childNodes[col];
		if (chld.nodeName != 'TD') continue;
		if (!chld.childNodes) continue;
		for (subs in chld.childNodes) {
			gchld = chld.childNodes[subs];
			if (gchld.nodeName != 'NOBR') continue;
			if (!gchld.childNodes) continue;
			for (pcs in gchld.childNodes) {
				if (gchld.childNodes[pcs].nodeName != 'A') continue;
				if (fnd) { return false; }
				fnd = gchld.childNodes[pcs];
			}
		}
	}
	if (fnd) {
		if (fnd.onclick)       { fnd.onclick ();         return true; }
		if (fnd.dispatchEvent) {
			try { fnd.dispatchEvent(evt); return true; }
			catch (e) { ; }
		}
		if (fnd.href && fnd.href.match (/^http:\/\//)) { window.top.location = fnd.href; return true; }
	}
	
	return false;
}

function j_RCLitRow(row) {
	var pnt = row.parentNode;
	var color = 'white';
	for (ix=0; ix<pnt.childNodes.length; ix++) {
		if (pnt.childNodes[ix] == row) break;
		if (pnt.childNodes[ix].nodeName == 'TR') {
			try {
				if (pnt.childNodes[ix].style.backgroundColor &&
				    pnt.childNodes[ix].style.backgroundColor != 'white')
					color = pnt.childNodes[ix].style.backgroundColor;
			} catch (e) {;}
		}
	}
	row.style.backgroundColor = color;
}
function j_RCUnLitRow (row) {
	row.style.backgroundColor = 'white';
}
function j_RCDoLit (row, evt) {
	try { if (evt.srcElement.tagName == 'IMG' || evt.srcElement.tagName == 'A') { return false; } } catch(e) {;}
	try { if (evt.target.nodeName    == 'IMG' || evt.target.nodeName    == 'A') { return false; } } catch(e) {;}
	
	var fnd;
	try { fnd = row.childNodes[1].childNodes[0]; } catch(e) { return false; };
	if (!fnd || fnd.nodeName != 'A') return false;
	
	if (fnd.onclick)       { fnd.onclick();         return true; }
	if (fnd.onClick)       { fnd.onClick();         return true; }
	if (fnd.dispatchEvent) { fnd.dispatchEvent(evt); return true; }
	if (fnd.href && fnd.href.match (/^http:\/\//)) { window.top.location = fnd.href; return true; }
	
	return false;
}

var j_RCHilited;
function j_RCRow (row, color) {
	var rownum = Math.abs(row.rowIndex);
	var tab = row.parentNode;
	
	if (typeof (j_RCHiLited) != 'undefined') j_RCUnRow(row);
	j_RCHilited = undefined;

	if (!tab.DavesWidth) {
		DavesWidth = 0;
		for (ix in tab.childNodes) {
			var i = tab.childNodes[ix];
			if (i.nodeName == 'TR' && i.childNodes.length > DavesWidth) DavesWidth = i.childNodes.length;
		}
		tab.DavesWidth  = DavesWidth;
		tab.DavesLength = tab.childNodes.length;
		tab.DavesTabTab = new Array(tab.DavesLength);
		for (ix=0; ix<tab.DavesLength; ix++) {
			tab.DavesTabTab[ix] = new Array (tab.DavesWidth);
		}
		tab.RowDun = 0;
	}
	if (tab.RowDun < rownum) {
		if (!tab.LastNodeProcd) {
			tab.LastNodeProcd = tab.firstChild;
			if (tab.LastNodeProcd.nodeName == 'TBODY') tab.LastNodeProcd = tab.LastNodeProcd.firstChild;
		}
		var DoAll = (typeof(j_SPI) == 'function');
		while (tab.LastNodeProcd.nextSibling) {
			var i = tab.LastNodeProcd.nextSibling;
			tab.LastNodeProcd = i;
			if (i.nodeName != 'TR') continue;
			tab.RowDun = Math.abs (i.rowIndex);
			var colstart = 0;
			for (jx in i.childNodes) {
				var j = i.childNodes[jx];
				if (j.nodeName != 'TD') continue;
				while (tab.DavesTabTab[Math.abs(i.rowIndex)][Math.abs(colstart)] != undefined) colstart++;
				for (rx=0; rx<j.rowSpan; rx++) {
					for (cx=0; cx<j.colSpan; cx++) {
						var row = Math.abs(i.rowIndex + rx);
						var col = Math.abs(colstart + cx);
						tab.DavesTabTab[row][col] = j;
					}
				}
			}
			if (!DoAll && (rownum <= tab.RowDun)) break;
		}
	}

	j_RCHilited = new Array (tab.DavesWidth);	
	for (ix=0; ix<tab.DavesWidth; ix++) {
		if (tab.DavesTabTab[rownum][ix] &&
		    (!tab.DavesTabTab[rownum][ix].style.backgroundColor || tab.DavesTabTab[rownum][ix].style.backgroundColor == 'white') &&
		    (!tab.DavesTabTab[rownum][ix].className             || tab.DavesTabTab[rownum][ix].className != 'nSr')) {
			j_RCHilited[ix] = tab.DavesTabTab[rownum][ix];
			if (j_RCHilited[ix]) j_RCHilited[ix].style.backgroundColor = color;
		}
	}
	if (typeof(r_BonusRowOver) == 'function') r_BonusRowOver(row, color);
}

function j_RCUnRow (row) {
	if (typeof (j_RCHilited) == 'undefined') return;
	for (ix=0; ix<j_RCHilited.length; ix++) {
		if (j_RCHilited[ix]) j_RCHilited[ix].style.backgroundColor = 'white';
	}
	j_RCHilited = undefined;
	if (typeof(r_BonusRowOut) == 'function') r_BonusRowOut(row);
}

function j_Cro (ro, col) {
	if (col == '0') {
		ro.style.backgroundColor = 'white';
		try { ro.style.backgroundColor = ro.obg; } catch(e) {;}
		try { r_BonusRowOut(ro); } catch(e) {;}
		return true;
	}
	try { ro.obg = ro.style.backgroundColor; } catch(e) {;}
	ro.style.backgroundColor = col;
	try { r_BonusRowOver (ro, col); } catch(e) {;}
	return true;
}
