// Various functions.
function FWait() { var i; for(i = 0; i < 10000; i++); }

function FShakeDoc(pCount) {
	if(parent.moveBy) {
		var i, j;
		for(i = 10; i > 0; i--) {
			for(j = pCount; j > 0; j--) {
				parent.moveBy(0, i); FWait();
				parent.moveBy(i, 0); FWait();
				parent.moveBy(0, -i); FWait();
				parent.moveBy(-i, 0); FWait();
			}
		}
		ShakeDocButton.value = "Wooow! Was it good for you too, baby? Again?";
	}
}

function FViewToHOL(pOL) {
	var sColl = parent.frames("TOCFrame").document.all.tags("P");
	if(sColl)
		for(i = 0; i < sColl.length; i++) {
			if((sColl[i].className >= "HOL_0") && (sColl[i].className <= "HOL_" + pOL))
				sColl[i].style.display = "block";
			if((sColl[i].className > "HOL_" + pOL) && (sColl[i].className <= "HOL_9"))
				sColl[i].style.display = "none";
		}
}

// Start cookie work
function FGetCookieVal(pOffset) {
	var sEndStr = document.cookie.indexOf(";", pOffset);
	if(sEndStr == -1) sEndStr = document.cookie.length;
	return unescape(document.cookie.substring(pOffset, sEndStr));
}
function FGetCookie(pName) {
	var sArg = pName + "=";
	var sALen = sArg.length;
	var sClen = document.cookie.length;
	var i = 0;
	while(true) {
		var j = i + sALen;
		if(document.cookie.substring(i, j) == sArg) return FGetCookieVal(j);
		i = document.cookie.indexOf(" ", i) + 1;
		if((i <= 0) || (i >= sCLen)) break;	
	}
	return 0;
}
function FSetCookie(pName, pValue, pExpDate) {
	var sArgv = FSetCookie.arguments;
	var sArgc = FSetCookie.arguments.length;
	var sExpires = (sArgc > 2) ? sArgv[2] : null;
	var sPath = (sArgc > 3) ? sArgv[3] : null;
	var sDomain = (sArgc > 4) ? sArgv[4] : null;
	var sSecure = (sArgc > 5) ? sArgv[5] : false;

	document.cookie = pName + "=" + escape(pValue) +
		((sExpires == null) ? "" : ("; expires=" + sExpires.toUTCString())) +
		((sPath == null) ? "" : ("; path=" + sPath)) +
		((sDomain == null) ? "" : ("; domain=" + sDomain)) +
		((sSecure == true) ? "; secure" : "");
}
// End cookie work

function FLoadScrollFromCookie() { return FGetCookie('YScroll'); }
function FSaveScrollToCookie(pScroll) {
	var sMinScroll = 30;
	if(pScroll > sMinScroll) {
		var sExpDays = 90;
		var sExpDate = new Date();
		sExpDate.setTime(sExpDate.getTime() + (sExpDays * 86400 * 1000));
		FSetCookie('YScroll', pScroll, sExpDate);
	}
}

function FOpenDoc() { window.scrollTo(0, parseInt(FLoadScrollFromCookie())); window.focus(); }
function FCloseDoc() { FSaveScrollToCookie(document.body.scrollTop); }

