/* text size */

var vNum = navigator.appVersion.charAt(0);
var bName = navigator.appName.charAt(0);
if ( bName == "M" && vNum < 4)
	location.href="getnewbrowser.html";
if ( bName == "N" && vNum < 4)
	location.href="getnewbrowser.html";

document.writeln("<STYLE TYPE='text/css'><!--");
if(navigator.appVersion.indexOf("Mac") > -1)
{
	if( bName == "M")
	 {
		// MAC IE
		document.writeln(".text9{font-size:9px; line-height:13px}");
		document.writeln(".text10{font-Size:10px; line-height:13px}");
		document.writeln(".text12{font-Size:12px; line-height:15px}");
		document.writeln(".text14{font-Size:14px; line-height:15px}");
	}
	else
	{
		if( vNum < 5 )
		{
			// MAC NETSCAPE 4.x
			document.writeln(".text9{font-size:9px; line-height:12px}");
			document.writeln(".text10{font-Size:10px; line-height:13px}"); 
			document.writeln(".text12{font-Size:12px; line-height:15px}");
			document.writeln(".text14{font-Size:14px; line-height:18px}");
	 	}
	 	else
	 	{
			// MAC NETSCAPE 6.x~
			document.writeln(".text9{font-size:9px; line-height:12px}");
			document.writeln(".text10{font-Size:10px; line-height:13px}"); 
			document.writeln(".text12{font-Size:12px; line-height:15px}");
			document.writeln(".text14{font-Size:14px; line-height:18px}");	 	
	 	}
	 }

}
else
{
	if( bName == "M")
	{
		// WIN IE
		document.writeln(".text9{font-size:10px; line-height:12px}");
		document.writeln(".text10{font-Size:11px; line-height:13px}");
		document.writeln(".text12{font-Size:12px; line-height:16px;}");
		document.writeln(".text14{font-Size:14px; line-height:18px;}");
	}
	else
	{
		if( vNum < 5 )
		{
			// WIN NETSCAPE 4.x
			document.writeln(".text9{font-size:11px; line-height:12px}");
			document.writeln(".text10{font-Size:11px; line-height:13px}");
			document.writeln(".text12{font-Size:12px; line-height:16px}");
			document.writeln(".text14{font-Size:15px; line-height:18px}");
		}
		else
		{
			// WIN NETSCAPE 6.x~
			document.writeln(".text9{font-size:10px; line-height:12px}");
			document.writeln(".text10{font-Size:11px; line-height:13px}");
			document.writeln(".text12{font-Size:12px; line-height:16px;}");
			document.writeln(".text14{font-Size:14px; line-height:18px;}");
		
		}
	}
}
 document.writeln("--></STYLE>");



/* Popup */

function SWindow(Aurl,Aname,Awidth,Aheight,Atoolbar,Alocation,Astatus,Ascroll,Amenu,Aresize){
	Astr = "width=" + Awidth;
	Astr+= ",height=" + Aheight;
	if(Atoolbar)Astr+= ",toolbar";
	if(Alocation)Astr+= ",location";
	if(Astatus)Astr+= ",status";
	if(Ascroll)Astr+= ",scrollbars";
	if(Amenu)Astr+= ",menubar";
	if(Aresize)Astr+= ",resizable";
	window.open(Aurl,Aname,Astr);
}


/* rollover */
window.onload = function(){
  var conf = {
    className : 'btn',
    postfix : '_over'
  };
  var imgNodeList = getElementsByClassName(conf.className);
  var node;
  for (var i=0, len=imgNodeList.length; i<len; i++) {
    node = imgNodeList[i];
    node.originalSrc = node.src;
    node.rolloverSrc = node.originalSrc.replace(/(\.gif|\.jpg|\.png)/, conf.postfix+"$1");
    preloadImage(node.rolloverSrc);
    node.onmouseover = function(){
      this.src = this.rolloverSrc;
    };
    node.onmouseout = function(){
      this.src = this.originalSrc;
    };
  }
};
function getElementsByClassName(name){
  var elements = [];
  var allElements = document.getElementsByTagName('*');
  for (var i=0, len=allElements.length; i<len; i++) {
    if (allElements[i].className == name){
      elements.push(allElements[i]);
    }
  }
  return elements;
}
preloadedImages = [];
function preloadImage(url){
	var p = preloadedImages;
	var l = p.length;
	p[l] = new Image();
	p[l].src = url;
}


/* scroll */
(function(){
    var easing = 0.2;
    var interval = 20;
    var d = document;
    var targetX = 0;
    var targetY = 0;
    var targetHash = '';
    var scrolling = false;
    var splitHref = location.href.split('#');
    var currentHref_WOHash = splitHref[0];
    var incomingHash = splitHref[1];
    var prevX = null;
    var prevY = null;

    addEvent(window, 'load', init);

    function init(){
        setOnClickHandler();
        if(incomingHash){
            if(window.attachEvent && !window.opera){
                setTimeout(function(){scrollTo(0,0);setScroll('#'+incomingHash);},50);
            }else{
                scrollTo(0, 0);
                setScroll('#'+incomingHash);
            }
        }
    }
    function addEvent(eventTarget, eventName, func){
        if(eventTarget.addEventListener){
            eventTarget.addEventListener(eventName, func, false);
        }else if(window.attachEvent){
            eventTarget.attachEvent('on'+eventName, function(){func.apply(eventTarget);});
        }
    }
    
    function setOnClickHandler(){
        var links = d.links;
        for(var i=0; i<links.length; i++){
            var link = links[i];
            var splitLinkHref = link.href.split('#');
            if(currentHref_WOHash == splitLinkHref[0] && d.getElementById(splitLinkHref[1])){
                addEvent(link, 'click', startScroll);
            }
        }
    }

    function startScroll(event){
        if(event){
            event.preventDefault();
        }else if(window.event){
            window.event.returnValue = false;
        }
        setScroll(this.hash);
    }

    function setScroll(hash){
        var targetEle = d.getElementById(hash.substr(1));
        if(!targetEle)return;
        var ele = targetEle
        var x = 0;
        var y = 0;
        while(ele){
            x += ele.offsetLeft;
            y += ele.offsetTop;
            ele = ele.offsetParent;
        }
        targetX = x;
        targetY = y;
        targetHash = hash;
        if(!scrolling){
            scrolling = true;
            scroll();
        }
    }

    function scroll(){
        var currentX = d.documentElement.scrollLeft||d.body.scrollLeft;
        var currentY = d.documentElement.scrollTop||d.body.scrollTop;
        var vx = (targetX - currentX) * easing;
        var vy = (targetY - currentY) * easing;
        var nextX = currentX + vx;
        var nextY = currentY + vy;
        if((Math.abs(vx) < 1 && Math.abs(vy) < 1)
           || (prevX === currentX && prevY === currentY)){
            scrollTo(targetX, targetY);
            scrolling = false;
            location.hash = targetHash;
            prevX = prevY = null;
            return;
        }else{
            scrollTo(parseInt(nextX), parseInt(nextY));
            prevX = currentX;
            prevY = currentY;
            var scope = this;
            setTimeout(function(){scroll.apply(scope)},interval);
        }
    }

}());
