/*
	prev - стрелка перехода на предыдущую позицию;
	next - стрелка перехода на следующую позицию;
	scroll -  блок прокрутки в css: overflow:hidden;
	hv - направление горизонтальное или вертикальное;
	increasePlus - увеличение - шаг
	delay - задержка
	length - длинна перехода при одном нажатом клике
*/
function ext_photogallery_s_scroll(prev, scroll, next, hv, increasePlus, delay, length) {

	var hv = hv || 'horizontal';
	var increasePlus = increasePlus || 1;
	var delay = delay || 1;
	
	prev.onmousedown = function () { scrollStart(-increasePlus); }
	next.onmousedown = function () { scrollStart(increasePlus); }
	prev.onmouseup = scrollStop;
	next.onmouseup = scrollStop;
	
	function scrollStart(increase) { 		
		if (!delay) delay = 1;
		var pos = (increase < 0) ? increase * -1 : increase;
		pos = Math.ceil(length/pos);
		
		if(hv == 'horizontal') { var first = scroll.scrollLeft; }
		if(hv == 'vertical') { var first = scroll.scrollTop; }
		
		function doScroll() {
			if (length && pos-- <= 0) {
				clearInterval(scroll.interval);
				return;
			}
			if(hv == 'horizontal') {	
				scroll.scrollLeft += increase;
				if (scroll.scrollLeft !== first + increase) clearInterval(scroll.interval);
				first = scroll.scrollLeft;
			}
			if(hv == 'vertical') {	
				scroll.scrollTop += increase;
				if (scroll.scrollTop !== first + increase) clearInterval(scroll.interval);
				first = scroll.scrollTop;
			}			
		}
		if (scroll.interval) 
		{
			clearInterval(scroll.interval);
		}
		scroll.interval = setInterval(doScroll, delay);
	};
	
	function scrollStop() {
		clearInterval(scroll.interval);
	};
}

function ext_photogallery_s_scroll_param(prevID, scrollID, nextID) {
	var prevEL, scrollEL, nextEL;
	if((prevEL = document.getElementById(prevID)) && (scrollEL = document.getElementById(scrollID)) && (nextEL = document.getElementById(nextID))) {
		if(window.opera) { ext_photogallery_s_scroll(prevEL, scrollEL, nextEL, 'vertical', 2); }
		else {ext_photogallery_s_scroll(prevEL, scrollEL, nextEL, 'vertical', 3); }		
	}
}

function ext_photogallery_s_scroll_height() {
	var elID = 'ext_photogallery_s_slide';
	var el;
	if(el = document.getElementById(elID)) {
		el.style.height = el.parentNode.offsetHeight - 40 - 75 + 'px';
	}
}

bs.onReady(function() {
	//ext_photogallery_s_scroll_height();
	ext_photogallery_s_scroll_param('ext_photogallery_s_st', 'ext_photogallery_s_slide', 'ext_photogallery_s_sb');
});

