
bw = new browserCheck;
var smenuObj= new Object();


var scroll_menu_cookie = loadCookie('scroll-menu');

function subMenu_init(id, mt, mb, tp) {
	smenuObj = getDiv(id);
	smenuObj.offsetX;
	smenuObj.offsetY=tp;
	smenuObj.marginTop=mt ? mt : 0;
	smenuObj.marginBottom=mb ? mb : 0;
	smenuObj.topPos=tp;
	smenuObj.style.position = 'absolute';
	smenuObj.topPos = tp;
	smenuObj.moveStop = 0;
	smenuObj.canvasObj = getDiv('centerFrame');
	//smenuSmoothMove();
}

function smenuSmoothMove() {
	var yt = getScrollTop();
	var divh = smenuObj.offsetHeight;

	var cavh = smenuObj.canvasObj.offsetHeight+ smenuObj.canvasObj.offsetTop;

	if (cavh >= smenuObj.marginTop + divh + smenuObj.marginBottom) {
		yt = Math.max(yt + smenuObj.marginTop, smenuObj.topPos);

	} else {
		var yt1 = Math.max(yt + smenuObj.marginTop, smenuObj.topPos);
		var f1 = (yt1 > smenuObj.offsetY) ? 1 : 0;
		var yt2 = yt - (divh + smenuObj.marginBottom - cavh);
		yt2 = Math.max(yt2, smenuObj.topPos);
		var f2 = (yt2 < smenuObj.offsetY) ? 1 : 0;
		if (f1 && f2) yt = smenuObj.offsetY;
		else yt = f2 ? Math.max(yt1, yt2) : Math.min(yt1, yt2);
	}

	//overflow stop
	if (cavh <=yt+smenuObj.offsetHeight) {
		yt=cavh-smenuObj.offsetHeight-smenuObj.marginBottom;
		smenuObj.style.top = smenuObj.offsetY + 'px';
	} 

	//scroll
	 if (yt != smenuObj.offsetY) {
		var vy = (yt - smenuObj.offsetY) * 0.25;
		if (Math.abs(vy) < 1) vy = (vy > 0) ? 1 : (vy < 0) ? -1 : 0;
		smenuObj.offsetY += Math.round(vy);
		smenuObj.style.top = smenuObj.offsetY + 'px';
	}
	if(!smenuObj.moveStop){
		setTimeout('smenuSmoothMove()' , 15);
	}
}


function subMenu() {

	subMenu.init = function(id, mt, mb, tp) {
		subMenu_init(id, mt, mb, tp);
	}

} new subMenu();
