
if (document.layers) {
	prename = '';
	postname = '';
	layerleft = '.left';
	layertop = '.top';
	layerwidth = '.clip.width';
	layerheight = '.clip.height';
	browser = 'nc';
} else if (document.all) {
	prename = 'all.';
	postname = '.style';
	layerleft = '.pixelLeft';
	layertop = '.pixelTop';
	layerwidth = '.pixelWidth';
	layerheight = '.pixelHeight';
	browser = 'ie';
} else if (document.getElementById) {					
	prename = 'getElementById(id)';
	postname = '.style"';
	layerleft = '.left';
	layertop = '.top';
	layerwidth = '.width';
	layerheight = '.height';
	browser = 'ns6';
} else {
	browser = 'nn';
}
 
function showLayer(id) {
	if ((document.layers) && (document[id])) document[id].visibility = 'show';
	else if ((document.all) && (document.all[id])) document.all[id].style.visibility = 'visible';
	else if ((document.getElementById) && (document.getElementById(id))) document.getElementById(id).style.visibility = 'visible';
}

function hideLayer(id) {
	if ((document.layers) && (document[id])) document[id].visibility = 'hide';
	else if ((document.all) && (document.all[id])) document.all[id].style.visibility = 'hidden';
	else if ((document.getElementById) && (document.getElementById(id))) document.getElementById(id).style.visibility = 'hidden';
}

function getHeight() {
	if (document.layers)	return (window.innerHeight + 4);
	else if (document.all) return (document.body.clientHeight);
	else if (document.getElementById) return (window.innerHeight + 4);
}

function getWidth() {
	if (document.layers) return (window.innerWidth + 4);
	else if (document.all) return (document.body.clientWidth);
	else if (document.getElementById) return (window.innerWidth + 4);
}

function startScroll(id,dir) {
	scrollLimited(id,'',dir);
}

function init() {
	nestref = 'document.'
	for (i = 0; i < arguments.length; i++) {
		id = arguments[i];
		if (document.layers) obj = eval(nestref+prename+id+postname);
		else if (document.all) obj = eval(nestref+prename+id+postname);
		else if (document.getElementById) obj = eval('"document.'+prename+postname);
		if (document.layers) {
			if (obj.clip) {
					layclipTop = obj.clip.top;
					layclipRight = obj.clip.right;
					layclipBottom = obj.clip.bottom;
					layclipLeft = obj.clip.left;
			 }
			layposLeft = obj.left;
			layposTop = obj.top;
		} else if (document.all) {
			if (obj.clip) {
				clipv = obj.clip.split("rect(")[1].split(")")[0].split("px");
				layclipTop = Number(clipv[0]);
				layclipRight = Number(clipv[1]);
				layclipBottom = Number(clipv[2]);
				layclipLeft = Number(clipv[3]);
			}
			layposLeft = obj.pixelLeft;
			layposTop = obj.pixelTop;
		} else if (document.getElementById) {
			if (eval('document.getElementById(id).style.clip')) {
				clipv = eval('document.getElementById(id).style.clip').split("rect(")[1].split(")")[0].split("px");
				layclipTop = Number(clipv[0]);
				layclipRight = Number(clipv[1]);
				layclipBottom = Number(clipv[2]);
				layclipLeft = Number(clipv[3]);
			}
			layposLeft = parseInt(eval('document.getElementById(id).style.left'));
			layposTop = parseInt(eval('document.getElementById(id).style.top'));
		}
		layclipHeight = layclipBottom - layclipTop;
		layclipWidth = layclipRight - layclipLeft;
		if (document.layers) {
			inith = obj.document.height
			initw = obj.document.width
		} else if (document.all) {
			inith = obj.pixelTop+document.all[id].scrollHeight - layposTop
			initw = obj.pixelLeft+document.all[id].scrollWidth
		} else if (document.getElementById) {
			inith = eval('document.getElementById(id).offsetHeight') - layposTop;
			initw = eval('document.getElementById(id).offsetWidth') - layposLeft;
		}
		if (inith > layclipHeight) {
			scrollLimited();
			showLayer('scroll');
		}
	}
}

function resetScroll() {
	nestref = 'document.'
	for (i = 0; i < arguments.length; i++) {
		id = arguments[i]
		if (document.layers) obj = eval(nestref+prename+id+postname);
		else if (document.all) obj = eval(nestref+prename+id+postname);
		else if (document.getElementById) obj = eval('"document.'+prename+postname);
		scrollLimited();
		if (document.layers) {
			obj.left = layposLeft;
			obj.top = layposTop;
			obj.clip.top = layclipTop;
			obj.clip.right = layclipRight;
			obj.clip.bottom = layclipBottom;
			obj.clip.left = layclipLeft;
		} else if (document.all) {
			obj.pixelLeft = layposLeft;
			obj.pixelTop = layposTop;
			obj.clip = eval("'rect("+layclipTop+" "+layclipRight+" "+layclipBottom+" "+layclipLeft+")';");
		} else if (document.getElementById) {
			document.getElementById(id).style.left = layposLeft
			document.getElementById(id).style.top = layposTop;
			document.getElementById(id).style.clip = 'rect('+layclipTop+'px '+layclipRight+'px '+layclipBottom+'px '+layclipLeft+'px)';
		}
	}
}
