function selectTab(o)
{
	if(o == (void 0)){
	}
	else {
	  
    
	var buttonsGroup = o.parentNode;
	var groupId = buttonsGroup.getAttribute('groupId');
	var selectedClassName = buttonsGroup.getAttribute('selectedClassName');

	var si = o.className.indexOf(selectedClassName);
	if (si == -1) o.className = o.className + ' ' + selectedClassName;
	
	var itemIndex = 0;
	var n = 0;
	for (i = 0; i < buttonsGroup.childNodes.length; i++)
	{
		var node = buttonsGroup.childNodes[i];
		if (node.nodeType != 1) continue;
		if (node != o) 
		{
			var si = node.className.indexOf(selectedClassName);
			if (si != -1) node.className = 
			node.className.substring(0, si) + node.className.substring(si + selectedClassName.length);
		}
		else itemIndex = n;
		if (node.className != 'tabDivider') n += 1;
	}
	
	var tabGroup = document.getElementById(groupId);
	for (i = 0, n = 0; i < tabGroup.childNodes.length; i++)
	{
		var node = tabGroup.childNodes[i];
		if (node.nodeType != 1) continue;
		node.style.display = (n == itemIndex) ? 'block' : 'none';
		n += 1;
	}
	

	return false;
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

var scrollTimeout = 50;
var scrollValue = 0;
var scrollStep = -2;
var scrollItem;
var scrollHeight;
var scrollInterval;

function startScroll(id, step)
{
	scrollItem = document.getElementById(id);
	scrollHeight = scrollItem.offsetHeight - scrollItem.parentNode.offsetHeight;
	scrollStep = step;
	
	if (scrollInterval != null) clearInterval(scrollInterval);
	scrollInterval = setInterval('scrollElement()', scrollTimeout);
	return false;
}

function scrollElement()
{
	if ((scrollStep < 0 && Math.abs(scrollValue) < scrollHeight) ||
		(scrollStep > 0 && scrollValue < 0))
	{
		scrollValue += scrollStep;
		scrollItem.style.marginTop = scrollValue + 'px';
	}
}

function stopScroll(id, step)
{
	if (scrollInterval != null) clearInterval(scrollInterval);
	return false;
}


///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

///var slides;
///var slideTimeout = 20;
///var slideFade = true;
///var hideSlideItem = null;
///var showSlideItem = null;

var slides;
var slideTimeout = 20;
var slideFade = true;
var hideSlideItem = null;
var showSlideItem = null;
var slidePaused = false;

function slidePause()
{
	if (showSlideItem != null || hideSlideItem != null) slidePaused = true;
}

function slidePlay()
{
	if (showSlideItem != null || hideSlideItem != null) slidePaused = false;
}



function slidePrev(slidesCollectionId, step, fade, height)
{
	slides = document.getElementById(slidesCollectionId);
	if (slides.currentIndex == null) slides.currentIndex = (slides.childNodes[0].nodeType == 1) ? 0 : 1;
	
	slideHeight = height;
	if (slideHeight == 0) slideHeight = slides.offsetHeight;
	slideStep = step;
	slides.style.height = slideHeight + 'px';
	slideFade = fade;
	
	var i = slides.currentIndex - 1;
	while (i >= 0)
	{
		var node = slides.childNodes[i];
		if (node.nodeType != 1) { i--; continue; }
		
		hideSlideItem = slides.childNodes[slides.currentIndex];
		showSlideItem = slides.childNodes[i];
		
		showSlideItem.style.display = 'block';
		showSlide();
		
		//slides.childNodes[slides.currentIndex].style.display = 'none';
		//slides.childNodes[i].style.display = 'block';
		
		slides.currentIndex = i;
		break;
	}

	return false;
}

function slideFirst(slidesCollectionId)
{
	slides = document.getElementById(slidesCollectionId);
	slides.currentIndex = null;
	
	var i = 0;
	var n = 0;
	while (i < slides.childNodes.length)
	{
		var node = slides.childNodes[i]; 
		if (node.nodeType != 1) { i++; continue; } 
		if (n == 0)	{ node.style.display = ''; node.style.marginTop = '0px'; }
		if (n > 0)	{ node.style.display = 'none'; node.style.marginTop = '0px'; }
		n++; i++; 
	}
	return false;
}

function slideNext(slidesCollectionId, step, fade, height)
{
	slides = document.getElementById(slidesCollectionId);
	if (slides.currentIndex == null) slides.currentIndex = (slides.childNodes[0].nodeType == 1) ? 0 : 1;

	slideHeight = height;
	if (slideHeight == 0) slideHeight = slides.offsetHeight;
	slideStep = step;
	slides.style.height = slideHeight + 'px';
	slideFade = fade;
	
	var i = slides.currentIndex + 1;
	while (i < slides.childNodes.length)
	{
		var node = slides.childNodes[i];
		if (node.nodeType != 1) { i++; continue; }
		
		hideSlideItem = slides.childNodes[slides.currentIndex];
		showSlideItem = slides.childNodes[i];
				
		hideSlideItem.scrollY = null;
		showSlideItem.style.display = 'block';
		
		hideSlide();
						
		//slides.childNodes[slides.currentIndex].style.display = 'none';
		//slides.childNodes[i].style.display = 'block';
		
		slides.currentIndex = i;
		break;
	}
	
	return false;
}

function hideSlide()
{
	if (hideSlideItem.scrollY == null) hideSlideItem.scrollY = -slideStep; else hideSlideItem.scrollY -= slideStep;

	hideSlideItem.style.marginTop = hideSlideItem.scrollY + 'px';
	
	if (slideFade)
	{
		setElementOpacity(hideSlideItem, 1 - Math.abs(hideSlideItem.scrollY / slideHeight));
		setElementOpacity(showSlideItem, Math.abs(hideSlideItem.scrollY / slideHeight));
	}
	
	if (hideSlideItem.scrollY > -slideHeight) setTimeout(hideSlide, slideTimeout); else 
	{
		hideSlideItem.style.display = 'none';
		slides.style.height = null;
	}
}

function showSlide()
{
	if (showSlideItem.scrollY == null) showSlideItem.scrollY = -slideStep; else showSlideItem.scrollY += slideStep;
	
	showSlideItem.style.marginTop = showSlideItem.scrollY + 'px';
	
	if (slideFade)
	{
		setElementOpacity(showSlideItem, 1 - Math.abs(showSlideItem.scrollY / slideHeight));
		setElementOpacity(hideSlideItem, Math.abs(showSlideItem.scrollY / slideHeight));
	}
	
	if (showSlideItem.scrollY < 0) setTimeout(showSlide, slideTimeout); else 
	{
		hideSlideItem.style.display = 'none';
		slides.style.height = null;
	}
}

/* Opacity functions */

function setElementOpacity(o, opacity)
{
	var dstyle = document.body.style;
	if (typeof dstyle.opacity == 'string') o.style.opacity = opacity;
	else if (typeof dstyle.MozOpacity == 'string') o.style.MozOpacity = opacity;
	else if (typeof dstyle.KhtmlOpacity == 'string') o.style.KhtmlOpacity = opacity;
	else if (document.body.filters)	setFilterElementOpacity(o, opacity);
}

function setFilterElementOpacity(o, opacity)
{
	opacity *= 100;
	var alpha = o.filters['DXImageTransform.Microsoft.alpha'] || o.filters.alpha;
	if (alpha) alpha.opacity = opacity; else o.style.filter += 'progid:DXImageTransform.Microsoft.Alpha(opacity=' + opacity + ')';
}