// JavaScript Document @Coretomic 2009 anekrasov@coretomic.com
// TODO: popup image
try{
StaticGallery = 
{
	preloadedCount:6,
	getGallery:function(el){
		while(el && el.className.indexOf('gallery_container')<0)el=el.parentNode;
		return el;
	},
	getPreviewDiv:function(gallery){
		var divs=gallery.getElementsByTagName('div');
		for(var i=0;i<divs.length;i++)
			if(divs[i].className.indexOf('big_item')>-1)return divs[i];
		return null;
	},
	clearItems:function(row){
		var cnt=row.childNodes.length;
		for(var i=cnt-1;i>0;i--)
		{
			if(row.childNodes[i].tagName!='LI')
			{				
				row.removeChild(row.childNodes[i]);
			}
		}
	},
	LoadImage:function(el){		
		var first=el.firstChild;
		//console.error(el,first,first.innerHTML,first.innerText);
		if(first.tagName=="SPAN" && first.className=="img_placeholder")
		{
			var img=document.createElement("IMG");			
			img.src=first.innerHTML;			
			el.removeChild(first);
			el.insertBefore(img,el.firstChild);
			//console.error(img);
		}
	},
	changeFirst:function(row){		
		var first=row.firstChild;
		this.LoadImage(row.childNodes[this.preloadedCount].firstChild);
		row.appendChild(first);
		//row.style.left=0;
	},	
	changeLast:function(row){
		var last=row.lastChild;
		this.LoadImage(row.childNodes[row.childNodes.length-this.preloadedCount].firstChild);
		row.insertBefore(last, row.firstChild);		
	},
	cancelRotate:function(el){
		var timer=this.getGallery(el).getElementsByTagName('input')[0];
		if(timer.value)clearTimeout(timer.value);
		timer.value="";
	},
	MoveLeft:function(el){
		var timer=this.getGallery(el).getElementsByTagName('input')[0];
		timer.value=setInterval(function(){StaticGallery.ScrollLeft(el)},350);
		StaticGallery.ScrollLeft(el);
	},	
	MoveRight:function(el){
		var timer=this.getGallery(el).getElementsByTagName('input')[0];
		timer.value=setInterval(function(){StaticGallery.ScrollRight(el)},350);
		StaticGallery.ScrollRight(el);
	},
	ScrollLeft:function(el){		
		var row=this.getGallery(el).getElementsByTagName('ul')[0];				
		this.clearItems(row);
		this.changeFirst(row);		
		//console.error(gallery,elems,row);
 },
	ScrollRight:function(el){
		var row=this.getGallery(el).getElementsByTagName('ul')[0];
		this.clearItems(row);
		this.changeLast(row);	
	},
	onSelect:function(el){
		var gallery=this.getGallery(el);
		var view=this.getPreviewDiv(gallery);		
		var row=gallery.getElementsByTagName('ul')[0];		
		/*var img=el.childNodes[1].childNodes[0];		
		var new_img=document.createElement('IMG');
		new_img.src=img.src;
		
		var w=Math.floor((parseInt(view.offsetWidth)-parseInt(new_img.width))/2);
		//alert(view.offsetWidth+" "+new_img.clientWidth+" "+new_img.width);
		img.style.position='relative';		
		img.style.left=w+'px';
		*/
		
		for(var i=0;i<row.childNodes.length;i++){
			row.childNodes[i].className="gallery_elem";
		}
		el.className="gallery_elem active";
		var add=document.createElement('P');
		this.LoadImage(el.childNodes[1]);
		add.innerHTML = el.childNodes[1].innerHTML;
		add.align="center";
		while (view.firstChild) 
			view.removeChild(view.firstChild);			
		view.appendChild(add);		
	}
};
}catch(e){}
