var scContainer = null;
var scContent = null;
var scBox = null;
var scPoint = null;
var scTimer = null;
var scSpeed = 3;
var ZeroL = null;


function relPos(which) {
  if (is_nav4) {
    this.x = document.layers[which].pageX;
    this.y = document.layers[which].pageY;
  } else {
    var elem = (1)? document.getElementById(which) : document.all[which];
    this.x = elem.offsetLeft;
    this.y = elem.offsetTop;
    while (elem.offsetParent != null) {
      elem = elem.offsetParent;
      this.x += elem.offsetLeft;
      this.y += elem.offsetTop;
      if (elem.tagName == 'BODY') break;
    }
  }
  return this;
}

function scInit(){
   ZeroL = (is_nav4)? new relPos('zeroNN4'): new relPos("zeroDOM");
	if(is_nav4){
		scContainer = document.layers["scContainer"];
		scContent = document.layers["scContainer"].document.layers["scContent"];
		scBox = document.layers["scBox"];
		scPoint = document.layers["scBox"].document.layers["scPoint"];

		scContainer.visibility = "show";
		scBox.visibility = "show";

	}
	else{
		scContainer = document.getElementById('scContainer');
		scContent = document.getElementById('scContent');
		scBox = document.getElementById('scBox');
		scPoint = document.getElementById('scPoint');

		scContainer.style.visibility = "visible";
		scBox.style.visibility = "visible";

	}
	scInitDiv(scContainer,ZeroL.x,ZeroL.y+10);

	
	scInitDiv(scContent,0,0);
	scContent.maxX = 0;
	scContent.minX = 0;
	scContent.maxY = 0;
	scContent.minY = (scContainer.H - scContent.H < 0)? scContainer.H - scContent.H : 0 ;
	
	scInitDiv(scBox,ZeroL.x+445,ZeroL.y-5);
	
	scInitDiv(scPoint,0,12);
	scPoint.maxX = 0;
	scPoint.minX = 0;
	scPoint.maxY = scBox.H - scPoint.H - 18;
	scPoint.minY = 12;
	initMouseEvents();
	if(is_opera) setTimeout("ScCheckResize()",500);  
}

function scInitDiv(obj,initX,initY){
 	obj.curX = initX;
	obj.curY = initY;
	obj.W = (is_nav4)? obj.clip.width : obj.offsetWidth || obj.style.pixelWidth;
	obj.H = (is_nav4)? obj.clip.height : obj.offsetHeight || obj.style.pixelHeight;
	scMoveTo(obj,initX,initY);
 }
function scMoveTo(obj,x,y){
if(!y) return false;
		obj.curX = x;
		obj.curY = y;
		if(is_nav4) {
			obj.left = obj.curX;
			obj.top = obj.curY;
			}
		else {
			obj.style.left = obj.curX;
			obj.style.top = obj.curY;
			}
} 
function scScrollUp(){
	if(scTimer){
	clearTimeout(scTimer);
	}
	scContent.curY = (scContent.curY - scSpeed <= scContent.minY)? scContent.minY :(scContent.curY - scSpeed);
	scPoint.curY = scPoint.minY + (-scContent.curY) * (scPoint.maxY-scPoint.minY)/(scContent.maxY-scContent.minY);
	scMoveTo(scContent,scContent.curX,scContent.curY);
	scMoveTo(scPoint,scPoint.curX,scPoint.curY);
	scTimer = setTimeout("scScrollUp()",50);
} 
function scScrollDown(){
	if(scTimer){
	clearTimeout(scTimer);
	}
	scContent.curY = (scContent.curY + scSpeed >= scContent.maxY)? scContent.maxY :(scContent.curY + scSpeed);
	scPoint.curY = scPoint.minY + (-scContent.curY) * (scPoint.maxY-scPoint.minY)/(scContent.maxY-scContent.minY);
	scMoveTo(scContent,scContent.curX,scContent.curY);
	scMoveTo(scPoint,scPoint.curX,scPoint.curY);
	scTimer = setTimeout("scScrollDown()",50);
}
function scScrollStop(){
	clearTimeout(scTimer);
} 
function scScrollDrag(x,y){
	var mx = x - scPoint.dragOffsetX;
	var my = y - scPoint.dragOffsetY;
	if (mx>scPoint.maxX) mx=scPoint.maxX;
	if (mx<scPoint.minX) mx=scPoint.minX;
	if (my>scPoint.maxY) my=scPoint.maxY;
	if (my<scPoint.minY) my=scPoint.minY;	
	scContent.curY = scContent.maxY - (my-scPoint.minY) * (scContent.maxY-scContent.minY) / (scPoint.maxY-scPoint.minY);
	scMoveTo(scPoint,mx,my);	
	scMoveTo(scContent,scContent.curX,scContent.curY);
} 
function DynMouseDown(x,y) {
		if(x>=scBox.curX && x<=scBox.curX + 16 && y>=scBox.curY && y<=scBox.curY + 21){
		scScrollDown();
		scPoint.dragActive = false;
		}
		if(x>=scBox.curX && x<=scBox.curX + 16 && y>=scBox.curY + 433 && y<=scBox.curY + 414){
		scScrollUp();
		scPoint.dragActive = false;
		}
		x-=scBox.curX;
		y-=scBox.curY;
		if (x>=scPoint.curX && x<=scPoint.curX + scPoint.W  && y>=scPoint.curY && y<=scPoint.curY + scPoint.H) {
		scPoint.dragOffsetX = x-scPoint.curX;
		scPoint.dragOffsetY = y-scPoint.curY;
		scPoint.dragActive = true;
		clearTimeout(scTimer);
		return false;
	}
	else return true;
}

function DynMouseMove(x,y) {
	if (scPoint.dragActive) {
		x-=scBox.curX;
		y-=scBox.curY;
		scScrollDrag(x,y);	
		return false
	}
	else return true;
}

function DynMouseUp(x,y) {
	scPoint.dragActive = false;
	clearTimeout(scTimer);
	return true;
}

function ScCheckResize()
{
  var ZeroTemp =  new relPos("zeroDOM");
	if(ZeroL.x != ZeroTemp.x || ZeroL.y != ZeroTemp.y ){
		ZeroL.x = ZeroTemp.x;
		ZeroL.y = ZeroTemp.y;
		scResize();
		}
//	setTimeout("ScCheckResize()",1000);	
}
function scResize(){
	if(!is_opera) ZeroL = (is_nav4)? new relPos('zeroNN4'): new relPos("zeroDOM");
	if(is_nav4){
		document.location.reload () ;
	}
	else{
	scMoveTo(scContainer,ZeroL.x,ZeroL.y);
	scMoveTo(scBox,ZeroL.x+445,ZeroL.y-5);
	scMoveTo(scContent,scContent.curX,scContent.curY);
	scMoveTo(scPoint,scPoint.curX,scPoint.curY);
	scContainer.style.visibility = "visible";
	scBox.style.visibility = "visible";	
	scContent.style.visibility = "visible";
	scPoint.style.visibility = "visible";	
	}
	if (menuItems)
	{
		document.location.reload () ;
	}
}
window.onresize = scResize;
