// Made by geeeet@ghtml.com
// Keep these two lines and you're free to use this code

// Known bugs :
// If ie4_2.5 mac, please press apple-t to remove sidebar, otherwise everything is pushed 20px to the right...

// Corrected bugs :
// 25.01.2001 - When the height of the span "content" was less than the height of the span "contentClip" a javascript error occured, function changed : move()
// 21.02.2001 - Scrolling text wasn't selectable in ie, function changed : move()
// 05.03.2001 - Ie x and y coordinates was wrong when page was scrolled, function changed : getMouse2()

// 19.04.2001 - Finally able to remove browser-scrollbar if content is longer than the browser is high:
// Just put this in the style-tag right before the end head-tag:
// body {margin-left:0; margin-right:0; margin-top:0; margin-bottom:0; width:100%;height:100%;overflow:hidden}

// Touch me here :-)
var upH_2 = 1; // Height of up-arrow
var upW_2 = 25; // Width of up-arrow
var downH_2 = 1; // Height of down-arrow
var downW_2 = 25; // Width of down-arrow
var dragH_2 = 25; // Height of scrollbar ½ºÅ©·ÑµÇ´ÂÀÌ¹ÌÁöÀÇ³ôÀÌ
var dragW_2 = 25; // Width of scrollbar ½ºÅ©·ÑµÇ´ÂÀÌ¹ÌÁöÀÇ³ÐÀÌ
var scrollH_2 = 155; // Height of scrollbar µå·¡±×µÇ´Â ¹üÀ§
var speed_2 = 4; // Scroll speed_2 ½ºÅ©·ÑµÇ´Â ¼Óµµ

// And now... go to the bottom of the page...

// Browser detection
var dom_2 = document.getElementById ? true:false;
var nn4_2 = document.layers ? true:false;
var ie4_2 = document.all ? true:false;

var mouseY_2; // Mouse Y position onclick
var mouseX_2; // Mouse X position onclick

var clickUp_2 = false; // If click on up-arrow
var clickDown_2 = false; // If click on down-arrow
var clickDrag_2 = false; // If click on scrollbar
var clickAbove_2 = false; // If click above scrollbar
var clickBelow_2 = false; // If click below scrollbar

var timer2 = setTimeout("",500); // Repeat variable
var upL_2; // Up-arrow X
var upT_2; // Up-arrow Y
var downL_2; // Down-arrow X
var downT_2; // Down-arrow Y
var dragL_2; // Scrollbar X
var dragT_2; // Scrollbar Y
var rulerL_2; // Ruler X
var rulerT_2; // Ruler Y
var contentT_2; // Content layer Y;
var contentH_2; // Content height
var contentClipH_2; // Content clip height
var scrollLength_2; // Number of pixels scrollbar should move
var startY_2; // Keeps track of offset between mouse and span


var upH = 1; // Height of up-arrow
var upW = 25; // Width of up-arrow
var downH = 1; // Height of down-arrow
var downW = 25; // Width of down-arrow
var dragH = 25; // Height of scrollbar ½ºÅ©·ÑµÇ´ÂÀÌ¹ÌÁöÀÇ³ôÀÌ
var dragW = 25; // Width of scrollbar ½ºÅ©·ÑµÇ´ÂÀÌ¹ÌÁöÀÇ³ÐÀÌ
var scrollH = 155; // Height of scrollbar µå·¡±×µÇ´Â ¹üÀ§
var speed = 4; // Scroll speed ½ºÅ©·ÑµÇ´Â ¼Óµµ

// And now... go to the bottom of the page...

// Browser detection
var dom = document.getElementById ? true:false;
var nn4 = document.layers ? true:false;
var ie4 = document.all ? true:false;

var mouseY; // Mouse Y position onclick
var mouseX; // Mouse X position onclick

var clickUp = false; // If click on up-arrow
var clickDown = false; // If click on down-arrow
var clickDrag = false; // If click on scrollbar
var clickAbove = false; // If click above scrollbar
var clickBelow = false; // If click below scrollbar

var timer = setTimeout("",500); // Repeat variable
var upL; // Up-arrow X
var upT; // Up-arrow Y
var downL; // Down-arrow X
var downT; // Down-arrow Y
var dragL; // Scrollbar X
var dragT; // Scrollbar Y
var rulerL; // Ruler X
var rulerT; // Ruler Y
var contentT; // Content layer Y;
var contentH; // Content height
var contentClipH; // Content clip height
var scrollLength; // Number of pixels scrollbar should move
var startY; // Keeps track of offset between mouse and span


function down(e){
	if((document.layers && e.which!=1) || (document.all && event.button!=1)) return true; // Enables the right mousebutton
	getMouse(e);
	startY = (mouseY - dragT);
	
	// If click on up-arrow
	if(mouseX >= upL && (mouseX <= (upL + upW)) && mouseY >= upT && (mouseY <= (upT + upH))){
		clickUp = true;
		return scrollUp();
	}	
	// Else if click on down-arrow
	else if(mouseX >= downL && (mouseX <= (downL + downW)) && mouseY >= downT && (mouseY <= (downT + downH))){
		clickDown = true;
		return scrollDown();
	}
	// Else if click on scrollbar
	else if(mouseX >= dragL && (mouseX <= (dragL + dragW)) && mouseY >= dragT && (mouseY <= (dragT + dragH))){
		clickDrag = true;
		return false;
	}
	else if(mouseX >= dragL && (mouseX <= (dragL + dragW)) && mouseY >= rulerT && (mouseY <= (rulerT + scrollH))){
		// If click above drag
		if(mouseY < dragT){
			clickAbove = true;
			clickUp = true;
			return scrollUp();
		}
		// Else click below drag
		else{
			clickBelow = true;
			clickDown = true;
			return scrollDown();
		}
	}
	// If no scrolling is to take place
	else{
		return true;
	}
}

// Mousedown
function down2(e){
if (movie0.style.display!="none"){
	if((document.layers && e.which!=1) || (document.all && event.button!=1)) return true; // Enables the right mousebutton
	getMouse2(e);
	startY_2 = (mouseY_2 - dragT_2);
	
	// If click on up-arrow
	if(mouseX_2 >= upL_2 && (mouseX_2 <= (upL_2 + upW_2)) && mouseY_2 >= upT_2 && (mouseY_2 <= (upT_2 + upH_2))){
		clickUp_2 = true;
		return scrollUp2();
	}	
	// Else if click on down-arrow
	else if(mouseX_2 >= downL_2 && (mouseX_2 <= (downL_2 + downW_2)) && mouseY_2 >= downT_2 && (mouseY_2 <= (downT_2 + downH_2))){
		clickDown_2 = true;
		return scrollDown2();
	}
	// Else if click on scrollbar
	else if(mouseX_2 >= dragL_2 && (mouseX_2 <= (dragL_2 + dragW_2)) && mouseY_2 >= dragT_2 && (mouseY_2 <= (dragT_2 + dragH_2))){
		clickDrag_2 = true;
		return false;
	}
	else if(mouseX_2 >= dragL_2 && (mouseX_2 <= (dragL_2 + dragW_2)) && mouseY_2 >= rulerT_2 && (mouseY_2 <= (rulerT_2 + scrollH_2))){
		// If click above drag
		if(mouseY_2 < dragT_2){
			clickAbove_2 = true;
			clickUp_2 = true;
			return scrollUp2();
		}
		// Else click below drag
		else{
			clickBelow_2 = true;
			clickDown_2 = true;
			return scrollDown2();
		}
	}
	// If no scrolling is to take place
	else{
		return true;
	}
}
else{

if((document.layers && e.which!=1) || (document.all && event.button!=1)) return true; // Enables the right mousebutton
	getMouse(e);
	startY = (mouseY - dragT);
	
	// If click on up-arrow
	if(mouseX >= upL && (mouseX <= (upL + upW)) && mouseY >= upT && (mouseY <= (upT + upH))){
		clickUp = true;
		return scrollUp();
	}	
	// Else if click on down-arrow
	else if(mouseX >= downL && (mouseX <= (downL + downW)) && mouseY >= downT && (mouseY <= (downT + downH))){
		clickDown = true;
		return scrollDown();
	}
	// Else if click on scrollbar
	else if(mouseX >= dragL && (mouseX <= (dragL + dragW)) && mouseY >= dragT && (mouseY <= (dragT + dragH))){
		clickDrag = true;
		return false;
	}
	else if(mouseX >= dragL && (mouseX <= (dragL + dragW)) && mouseY >= rulerT && (mouseY <= (rulerT + scrollH))){
		// If click above drag
		if(mouseY < dragT){
			clickAbove = true;
			clickUp = true;
			return scrollUp();
		}
		// Else click below drag
		else{
			clickBelow = true;
			clickDown = true;
			return scrollDown();
		}
	}
	// If no scrolling is to take place
	else{
		return true;
	}
}


}

// Drag function
function move2(e){
if (movie0.style.display!="none"){
	
	
	if(clickDrag_2 && contentH_2 > contentClipH_2){
		getMouse2(e);
		dragT_2 = (mouseY_2 - startY_2);
		
		if(dragT_2 < (rulerT_2))
			dragT_2 = rulerT_2;		
		if(dragT_2 > (rulerT_2 + scrollH_2 - dragH_2))
			dragT_2 = (rulerT_2 + scrollH_2 - dragH_2);
		
		contentT_2 = ((dragT_2 - rulerT_2)*(1/scrollLength_2));
		contentT_2 = eval('-' + contentT_2);

		moveTo2();
		
		// So ie-pc doesn't select gifs
		if(ie4_2)
			return false;
	}
}
else{

   if(clickDrag && contentH > contentClipH){
   	
		getMouse(e);
		dragT = (mouseY - startY);
		
		if(dragT < (rulerT))
			dragT = rulerT;		
		if(dragT > (rulerT + scrollH - dragH))
			dragT = (rulerT + scrollH - dragH);
		
		contentT = ((dragT - rulerT)*(1/scrollLength));
		contentT = eval('-' + contentT);

		moveTo();

		// So ie-pc doesn't select gifs
		if(ie4){
			return false;
		}
	}
}
}

function up(){
	clearTimeout(timer);
	// Resetting variables
	clickUp = false;
	clickDown = false;
	clickDrag = false;
	clickAbove = false;
	clickBelow = false;
	return true;
}
function up2(){
if (movie0.style.display!="none"){
		
	clearTimeout(timer2);
	// Resetting variables
	clickUp_2 = false;
	clickDown_2 = false;
	clickDrag_2 = false;
	clickAbove_2 = false;
	clickBelow_2 = false;
	return true;
}else{
clearTimeout(timer);
	// Resetting variables
	clickUp = false;
	clickDown = false;
	clickDrag = false;
	clickAbove = false;
	clickBelow = false;
	return true;

}
}

function getT(){
	if(ie4)
		contentT = document.all.content.style.pixelTop;
	else if(nn4)
		contentT = document.contentClip.document.content.top;
	else if(dom)
		contentT = parseInt(document.getElementById("content").style.top);
}

// Reads content layer top
function getT2(){
	if(ie4_2)
		contentT_2 = document.all.content2.style.pixelTop;
	else if(nn4_2)
		contentT_2 = document.contentClip2.document.content2.top;
	else if(dom_2)
		contentT_2 = parseInt(document.getElementById("content2").style.top);
}

// Reads mouse X and Y coordinates
function getMouse2(e){
	if(ie4_2){
		mouseY_2 = event.clientY + document.body.scrollTop;
		mouseX_2 = event.clientX + document.body.scrollLeft;
	}
	else if(nn4_2 || dom_2){
		mouseY_2 = e.pageY;
		mouseX_2 = e.pageX;
	}

}

function getMouse(e){
	if(ie4){
		mouseY = event.clientY + document.body.scrollTop;
		mouseX = event.clientX + document.body.scrollLeft;
	}
	else if(nn4 || dom){
		mouseY = e.pageY;
		mouseX = e.pageX;
	}
}

function moveTo(){
	if(ie4){
		document.all.content.style.top = contentT;
		document.all.ruler.style.top = dragT;
		document.all.drag.style.top = dragT;
	}
	else if(nn4){
		document.contentClip.document.content.top = contentT;
		document.ruler.top = dragT;
		document.drag.top = dragT;
	}
	else if(dom){
		document.getElementById("content").style.top = contentT + "px";
		document.getElementById("drag").style.top = dragT + "px";
		document.getElementById("ruler").style.top = dragT + "px";
	}
}

// Moves the layer
function moveTo2(){
if (movie0.style.display!="none"){
	if(ie4_2){
		document.all.content2.style.top = contentT_2;
		document.all.ruler2.style.top = dragT_2;
		document.all.drag2.style.top = dragT_2;
	}
	else if(nn4_2){
		document.contentClip2.document.content2.top = contentT_2;
		document.ruler2.top = dragT_2;
		document.drag2.top = dragT_2;
	}
	else if(dom_2){
		document.getElementById("content2").style.top = contentT_2 + "px";
		document.getElementById("drag2").style.top = dragT_2 + "px";
		document.getElementById("ruler2").style.top = dragT_2 + "px";
	}
}else{
   if(ie4){
		document.all.content.style.top = contentT;
		document.all.ruler.style.top = dragT;
		document.all.drag.style.top = dragT;
	}
	else if(nn4){
		document.contentClip.document.content.top = contentT;
		document.ruler.top = dragT;
		document.drag.top = dragT;
	}
	else if(dom){
		document.getElementById("content").style.top = contentT + "px";
		document.getElementById("drag").style.top = dragT + "px";
		document.getElementById("ruler").style.top = dragT + "px";
	}
}
}

function scrollUp(){
	getT();
	
	if(clickAbove){
		if(dragT <= (mouseY-(dragH/2)))
			return up();
	}
	
	if(clickUp){
		if(contentT < 0){		
			dragT = dragT - (speed*scrollLength);
			
			if(dragT < (rulerT))
				dragT = rulerT;
				
			contentT = contentT + speed;
			if(contentT > 0)
				contentT = 0;
			
			moveTo();
			timer = setTimeout("scrollUp()",25);
		}
	}
	return false;
}

// Scrolls down
function scrollDown(){
	getT();
	
	if(clickBelow){
		if(dragT >= (mouseY-(dragH/2)))
			return up();
	}

	if(clickDown){
		if(contentT > -(contentH - contentClipH)){			
			dragT = dragT + (speed*scrollLength);
			if(dragT > (rulerT + scrollH - dragH))
				dragT = (rulerT + scrollH - dragH);
			
			contentT = contentT - speed;
			if(contentT < -(contentH - contentClipH))
				contentT = -(contentH - contentClipH);
			
			moveTo();
			timer = setTimeout("scrollDown()",25);
		}
	}
	return false;
}

// Scrolls up
function scrollUp2(){

	getT2();
	
	if(clickAbove_2){
		if(dragT_2 <= (mouseY_2-(dragH_2/2)))
			return up2();
	}
	
	if(clickUp_2){
		if(contentT_2 < 0){		
			dragT_2 = dragT_2 - (speed_2*scrollLength_2);
			
			if(dragT_2 < (rulerT_2))
				dragT_2 = rulerT_2;
				
			contentT_2 = contentT_2 + speed_2;
			if(contentT_2 > 0)
				contentT_2 = 0;
			
			moveTo2();
			timer2 = setTimeout("scrollUp2()",25);
		}
	}
	return false;

}

// Scrolls down
function scrollDown2(){

	getT2();
	
	if(clickBelow_2){
		if(dragT_2 >= (mouseY_2-(dragH_2/2)))
			return up2();
	}

	if(clickDown_2){
		if(contentT_2 > -(contentH_2 - contentClipH_2)){			
			dragT_2 = dragT_2 + (speed_2*scrollLength_2);
			if(dragT_2 > (rulerT_2 + scrollH_2 - dragH_2))
				dragT_2 = (rulerT_2 + scrollH_2 - dragH_2);
			
			contentT_2 = contentT_2 - speed_2;
			if(contentT_2 < -(contentH_2 - contentClipH_2))
				contentT_2 = -(contentH_2 - contentClipH_2);
			
			moveTo2();
			timer2 = setTimeout("scrollDown2()",25);
		}
	}
	return false;

}

// reloads page to position the layers again
function reloadPage2(){
	location.reload();
}

// reloads page to position the layers again
function reloadPage(){
	location.reload();
}

// Preload
function eventLoader2(){
	
	if(ie4_2){
		// Up-arrow X and Y variables
		upL_2 = document.all.up2.style.pixelLeft;
		upT_2 = document.all.up2.style.pixelTop;		
		
		upL = document.all.up.style.pixelLeft;
		upT = document.all.up.style.pixelTop;		
		// Down-arrow X and Y variables
		downL_2 = document.all.down2.style.pixelLeft;
		downT_2 = document.all.down2.style.pixelTop;
		
		downL = document.all.down.style.pixelLeft;
		downT = document.all.down.style.pixelTop;
		
		// Scrollbar X and Y variables
		dragL_2 = document.all.drag2.style.pixelLeft;
		dragT_2 = document.all.drag2.style.pixelTop;
		
		dragL = document.all.drag.style.pixelLeft;
		dragT = document.all.drag.style.pixelTop;
		
		
		// Ruler Y variable
		rulerT_2 = document.all.ruler2.style.pixelTop;		
		rulerT = document.all.ruler.style.pixelTop;		
		// Height of content layer and clip layer
		contentH_2 = parseInt(document.all.content2.scrollHeight);
		contentClipH_2 = parseInt(document.all.contentClip2.style.height);
		
		contentH = parseInt(document.all.content.scrollHeight);
		contentClipH = parseInt(document.all.contentClip.style.height);
	}
	else if(nn4_2){
		// Up-arrow X and Y variables
		upL_2 = document.up2.left;
		upT_2 = document.up2.top;		
		
		upL = document.up.left;
		upT = document.up.top;		
		// Down-arrow X and Y variables
		downL_2 = document.down2.left;
		downT_2 = document.down2.top;		
		
		downL = document.down.left;
		downT = document.down.top;		
		// Scrollbar X and Y variables
		dragL_2 = document.drag2.left;
		dragT_2 = document.drag2.top;		
		
		dragL = document.drag.left;
		dragT = document.drag.top;		
		// Ruler Y variable
		rulerT_2 = document.ruler2.top;
		rulerT = document.ruler.top;
		// Height of content layer and clip layer
		contentH_2 = document.contentClip2.document.content2.clip.bottom;
		contentH = document.contentClip.document.content.clip.bottom;
		
		contentClipH_2 = document.contentClip2.clip.bottom;
		
		contentClipH = document.contentClip.clip.bottom;
	}
	else if(dom_2){
		// Up-arrow X and Y variables
		upL_2 = parseInt(document.getElementById("up2").style.left);
		upT_2 = parseInt(document.getElementById("up2").style.top);
		
		upL = parseInt(document.getElementById("up").style.left);
		upT = parseInt(document.getElementById("up").style.top);
		// Down-arrow X and Y variables
		downL_2 = parseInt(document.getElementById("down2").style.left);
		downT_2 = parseInt(document.getElementById("down2").style.top);
		
		downL = parseInt(document.getElementById("down").style.left);
		downT = parseInt(document.getElementById("down").style.top);
		// Scrollbar X and Y variables
		dragL_2 = parseInt(document.getElementById("drag2").style.left);
		dragT_2 = parseInt(document.getElementById("drag2").style.top);
		
		dragL = parseInt(document.getElementById("drag").style.left);
		dragT = parseInt(document.getElementById("drag").style.top);
		// Ruler Y variable
		rulerT_2 = parseInt(document.getElementById("ruler2").style.top);
		rulerT = parseInt(document.getElementById("ruler").style.top);
		// Height of content layer and clip layer
		contentH_2 = parseInt(document.getElementById("content2").offsetHeight);
		contentClipH_2 = parseInt(document.getElementById("contentClip2").offsetHeight);
		document.getElementById("content2").style.top = 0 + "px";
		
		contentH = parseInt(document.getElementById("content").offsetHeight);
		contentClipH = parseInt(document.getElementById("contentClip").offsetHeight);
		document.getElementById("content").style.top = 0 + "px";
		
	}
	
	// Number of pixels scrollbar should move
	scrollLength_2 = ((scrollH_2-dragH_2)/(contentH_2-contentClipH_2));
	
	scrollLength =scrollLength_2;
	// Initializes event capturing
	if(nn4_2){
		document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP);
		window.onresize = reloadPage;
	}
	
	
	


contentH = scrollH_2;
contentClipH = contentClipH_2;

   document.onmousedown = down2;
	document.onmousemove = move2;
	document.onmouseup = up2;
}

