/* default variables
============================================================*/

/*@cc_on 
var doc = document;
eval('var document = doc');
@*/


/* scroll function
============================================================*/

function pageScroll(){

	var scrolledX = scrolledY = null;
	var targetX = targetY = null;
	var scrollX,scrollY;
	var html = document.documentElement;
	var body = document.body;
	var scrollBtns = document.getElementsByTagName('a');

	for(var i=0;i<scrollBtns.length;i++){
		if(scrollBtns[i].getAttribute("href",2).match(/^#page/)){
			var btn = scrollBtns[i];
			btn.onclick = function(){
				var targetId = this.getAttribute("href",2).substr(1);
				if (document.getElementById(targetId)) {
					var Target = document.getElementById(targetId);
					try {
						var position = Target.getBoundingClientRect();
						targetX = position.left + (body.scrollLeft || html.scrollLeft) - html.clientLeft;
						targetY = position.top + (body.scrollTop || html.scrollTop) - html.clientTop;
					} catch(e) {
						targetX = Target.offsetLeft, targetY = Target.offsetTop;
					}
					scrollX = window.pageXOffset || html.scrollLeft || body.scrollLeft || 0;
					scrollY = window.pageYOffset || html.scrollTop || body.scrollTop || 0;
					scroll();
					return false;
				}
			}
		}
	}

	function scroll(){
		var X = window.pageXOffset || html.scrollLeft || body.scrollLeft || 0;
		var Y = window.pageYOffset || html.scrollTop || body.scrollTop || 0;
		scrollX += (targetX - X) / 7;
		scrollY += (targetY - Y) / 7;
		if((targetY === scrollX && targetY === scrollY) || (X === scrolledX && Y === scrolledY)) {
			scrolledX = scrolledY = null;
		} else {
			window.scrollTo(scrollX, scrollY);
			scrolledX = X, scrolledY = Y;
			setTimeout(function(){scroll()},1);
		}
	}
}


/* rollover function
============================================================*/

function setRollOver(){
	if(!document.getElementsByTagName) return false;
	var ovrImgList = document.images;
	var ovrIptList = document.getElementsByTagName('input');
	for(var i=0;i<ovrImgList.length;i++){
		if(ovrImgList[i].src.match("_off")) {
			preloadImage(ovrImgList[i].src.replace(/_off./i,"_on."));
			ovrImgList[i].onmouseover = function(){
				this.src = this.src.replace(/_off./i,"_on.");
				return false;
			}
			ovrImgList[i].onmouseout = function(){
				this.src = this.src.replace(/_on./i,"_off.");
				return false;
			}
		}
	}
	for(var i=0;i<ovrIptList.length;i++){
		if(ovrIptList[i].src.match("_off")) {
			preloadImage(ovrIptList[i].src.replace(/_off./i,"_on."));
			ovrIptList[i].onmouseover = function(){
				this.src = this.src.replace(/_off./i,"_on.");
				return false;
			}
			ovrIptList[i].onmouseout = function(){
				this.src = this.src.replace(/_on./i,"_off.");
				return false;
			}
		}
	}
}


/* preload function
============================================================*/
var preloadedImages = [];
function preloadImage(url){
	var l = preloadedImages.length;
	preloadedImages[l] = new Image();
	preloadedImages[l].src = url;
}


/* event listener
============================================================*/
function addEvent(elm,listener,fn){
	try{
		elm.addEventListener(listener,fn,false);
	}catch(e){
		elm.attachEvent("on"+listener,fn);
	}
}

addEvent(window,"load",pageScroll);
addEvent(window,"load",setRollOver);
// E N D