// JavaScript Document
function getElementsByClassName(_className, o)
{
	var _classArray = [];
	var _regExp = new RegExp('\\b' + _className + '\\b');
	//var _getAllTags = this.getElementsByTagName('*');
	var _getAllTags = o.getElementsByTagName('*');
	for(var i = 0; i < _getAllTags.length; i++)
	{
		if (_regExp.test(_getAllTags[i].className) == true)
		{
			_classArray.push(_getAllTags[i]);
		}
	}

	return _classArray;
}
document.getElementsByClassName = getElementsByClassName;

function addEvent (_obj, _event, _hdl)
{
	if(!document.all){
		_obj.addEventListener(_event,_hdl,false);
	}else{
		_obj.attachEvent("on"+_event,_hdl,false);
	}
}



function sp(){
	
	this.scrollersInit = scrollersInit;
	
	function scrollersInit(){
		var sclElements = document.getElementsByClassName('imgScroll', document);
		for (var j=0;j<sclElements.length;j++){
			addScrollerEffect(sclElements[j]);
		}
	}

	function addScrollerEffect(obj){
		obj.scroller = new class_scroller;
		
		function class_scroller(){
			var speed = 10;
			
			this.frame = frame;
			var moving = false;
			var strId = obj.id;
			var targetObj = obj;
			var scrollDiv = getElementsByClassName('imgScrollContent', obj)[0];
			var blDiv = getElementsByClassName('buttonLeft', obj)[0];
			var bL = blDiv.getElementsByTagName('A')[0];
			var brDiv = getElementsByClassName('buttonRight', obj)[0];
			var bR = brDiv.getElementsByTagName('A')[0];
			addEvent(bR,'click',clickR);
			addEvent(bL,'click',clickL);
			var totW = 0;
			var maskW = getElementsByClassName('mask', obj)[0].offsetWidth;
			
			var imagesNumberDiv = getElementsByClassName('imagesNumberDiv', obj)[0];
			var spanImagesNumber = imagesNumberDiv.getElementsByTagName('SPAN')[0];
			
			
			var currentX = 0;
			var targetX = 0;
			
			var arrLink = obj.getElementsByTagName('UL')[0].getElementsByTagName('A');
			var imgs = obj.getElementsByTagName('IMG');
			var nImgs = imgs.length-1;
			
			spanImagesNumber.innerHTML = '&nbsp;' + nImgs + '&nbsp;';
			
			/*for (var j=0;j<imgs.length;j++){
				totW += imgs[j].offsetWidth;
			}*/
			totW = nImgs * 123;
			function clickL(){
				if(targetX < 0){ 
					targetX += totW/nImgs;
					if(!moving){
						moving = true;
						frame('');
					}
				}
			}
			function clickR(){
				//alert('clickR');
				if(-targetX < totW - maskW){ 
					targetX -= totW/nImgs;
					if(!moving){
						moving = true;
						frame('');
					}
				}
			}
			
			function frame(strObj){
				var s = '';
				if(strObj!=''){
					mobj = document.getElementById(strObj);
					s = strObj;
				}else{
					mobj = obj;
					s = strId;
				}
				currentX+=(targetX-currentX)/speed;
				if(Math.abs(currentX-targetX)<.5){
					currentX = targetX;
					moving = false;
				}else{
					window.setTimeout("document.getElementById('"+ s +"').scroller.frame('"+ s +"');", 50);
				}
				scrollDiv.style.left = currentX + 'px'; 				
			}
			
		}
	}
}
