/*
-------------------------------------------------------------------------------------------
	ORANGE CIRCLE
	Module       : smoothScroll.js
	version      : 1.5.2
	revision     : 20070514
------------------------------------------------------------------------------------------ */
var env = new EXTENSION.GET_ENVIRONMENT();
env = {
	os : env.isOS(),
	ua : env.isUA(),
	is : env.isNAVIGATOR(),
	fp : env.FLASHPLAYER(),
	timer  : 0,
	scroll : 0,
	hash   : null
}


EXTENSION.SMS = function(){
	clearInterval(env.timer);
	env.hash     = this.hashs;
	var target       = $pos(this.hashs).y;
	var size         = new EXTENSION.GET_PAGESIZE();
	var scrollTop    = size.dy();
	var pageHeight   = size.ph();
	var windowHeight = size.wh();
	env.scroll   = (pageHeight-target<=windowHeight) ? (pageHeight-windowHeight)-scrollTop : target-scrollTop;
	env.timer    = setInterval('EXTENSION.SMS.start()', 20);
}


EXTENSION.SMS.start = function(){
	if(env.scroll == 0){
		clearInterval(env.timer);
		if(!env.is.sf()){
			if(!env.is.ie()) document.location.hash = env.hash;
		}
		return;
	}
	var moveValue = 0;
	if(Math.abs(env.scroll) >= 1){
		moveValue = (env.scroll > 0) ? Math.ceil(env.scroll*0.15) : Math.floor(env.scroll*0.15);
	}	else {
		moveValue = (env.scroll > 0) ? 1 : -1;
	}
	scrollBy(0, moveValue);
	env.scroll = env.scroll-moveValue;
}


EXTENSION.SMS.stop = function(){
	clearInterval(env.timer);
}


EXTENSION.SMS.setup = function(){
	var element = document.getElementsByTagName('a');
	var anclen  = element.length;
	for (var i=0; i<anclen; i++) {
		var href   = element[i].getAttribute('href');
		var hashs  = href.split('#');
		var target = document.getElementById(hashs[1]);
			if(document.all && hashs[0] == location.href.split('#')[0] && target){
				var check = true;
			} else if(href != '#' && hashs[0] == '' && target){
				var check = true;
			} else {
				var check = false;
			}
		if(check){
			element[i].hashs = hashs[1];
			addEvent(document,  'mousewheel', EXTENSION.SMS.stop);
			if(env.is.ie()){
				element[i].href = 'javascript:void(0);'
				element[i].onmouseup = EXTENSION.SMS;
			} else {
				element[i].onmousedown = EXTENSION.SMS;
			}
		}
	}
}

addEvent(window, 'load', EXTENSION.SMS.setup);
