var moveSpeed = 300; // Speed of changing Blocks
var uSpeed = 20;
var shortPause = 8000; // Pause between autochange Blocks
var longPause = 12000; // Long Pause between autochange Blocks

/* Do not touch */
var itemW = 583; // Minimum Video Block Width
var total = 0; // Items Total
var vitems = new Array(); // Blocks
var vbuttons = new Array(); // Buttons
var vtitles = new Array("ÔÐÀÍÖÈß","ÌÎÍÀÊÎ","ÈÒÀËÈß","ØÂÅÉÖÀÐÈß","ÁÅÍÈËÞÊÑ","ÃÎÐÍÎËÛÆÍÛÅ ÊÓÐÎÐÒÛ","MICE","ÝÂÎËÞÑÜÎÍ SPA","ÄËß ÏÀÐÒÍÅÐÎÂ"); // Titles
var first = 0; // The number of block to show on load
var current = first; // Current Block Number
var block1 = "";
var block2 = "";
var dSpeed = moveSpeed;
var curLeft = 0;
var nCurrent = 0;
var dOrder = "next";
var intSpeed = (dSpeed - (dSpeed % uSpeed)) / uSpeed;
var intW = (itemW - (itemW % intSpeed)) / intSpeed;
var autoScrollTO;
var firstScrollTO;
var moveTO;
var nowPause = shortPause;
/* X. Do not touch */

window.onresize = function()
{
	/*
	for(var i = 0 ; i < vitems.length ; i++)
	{
		vitems[i].style.visibility = "hidden";
	}
	*/
	getWMCWidth();
	total = 0;
	for(var i = 0 ; i < vitems.length ; i++)
	{
		var vitem = vitems[i];
		vitem.style.width = itemW + "px";
		//vitem.style.left = (itemW * total) + "px";
		//vitem.style.visibility = "visible";
		total++;
	}
}

function constructVideoBlock()
{
	getWMCWidth();
	var vmc = document.getElementById('videoMiddleCenter');
	var items = vmc.getElementsByTagName('div');
	total = 0;
	for(var i = 0 ; i < items.length ; i++)
	{
		if(items[i].className == "videoItem")
		{
			vitems.push(items[i]);
			var vitem = items[i];
			vitem.style.width = itemW + "px";
			//vitem.style.left = (itemW * total) + "px";
			if(i == first) vitem.style.visibility = "visible";
			total++;
		}
	}
	
	var vs = document.getElementById('videoSelector');
	var items = vs.getElementsByTagName('img');
	for(var i = 0 ; i < items.length ; i++)
	{
		vbuttons.push(items[i]);
		var vitem = items[i];
		vitem.alt = vitem.title = vtitles[i];
		if(i == first)
		{
			currentButton(i);
		}
	}
	
	currentNextPrev();
	
	firstScrollTO = setTimeout("startAutoScroll()", shortPause);
}

function getWMCWidth()
{
	var vmc = document.getElementById('videoMiddleCenter');
	itemW = vmc.clientWidth;
}

function currentButton(b) 
{	
	for(var i = 0 ; i < vbuttons.length ; i++)
	{
		if(b == i)
		{
			vbuttons[b].src = "i/video_pages_on.gif";
			vbuttons[b].style.cursor = "default";
		}
		else
		{
			vbuttons[i].src = "i/video_pages.gif";
			vbuttons[i].style.cursor = "pointer";
		}
	}	
}

function currentNextPrev() 
{
	var vml = document.getElementById('videoMiddleLeft');
	var vmr = document.getElementById('videoMiddleRight');
	
	var vmlimg = vml.getElementsByTagName('img')[0];
	var vmrimg = vmr.getElementsByTagName('img')[0];
	
	var prev = 0;
	if(current) prev = current - 1;
	else prev = total - 1;
	
	var next = 0;
	if(current == (total - 1)) next = 0;
	else next = current + 1;
	
	vmlimg.alt = vmlimg.title = vtitles[prev];
	vmrimg.alt = vmrimg.title = vtitles[next];
}

function preMoveNext(speed)
{
	nowPause = longPause;
	moveNext(speed);
}

function preMovePrev(speed)
{
	nowPause = longPause;
	movePrev(speed);
}

function moveNext(speed)
{
	block1 = vitems[current];
	nCurrent = getSecondBlock("next");
	block2 = vitems[nCurrent];
	dSpeed = speed;
	dOrder = "next";
	
	block2.style.left = itemW + "px";
	block2.style.visibility = "visible";
	
	intSpeed = (dSpeed - (dSpeed % uSpeed)) / uSpeed;
	intW = (itemW - (itemW % intSpeed)) / intSpeed;
	vtimes = (itemW - (itemW % intW)) / intW;
	lastW = intW + (itemW % intSpeed);
	
	scrollOnce();
}

function movePrev(speed)
{
	block1 = vitems[current];
	nCurrent = getSecondBlock("prev");
	block2 = vitems[nCurrent];
	dSpeed = speed;
	dOrder = "prev";
	
	block2.style.left = -itemW + "px";
	block2.style.visibility = "visible";
	
	intSpeed = (dSpeed - (dSpeed % uSpeed)) / uSpeed;
	intW = (itemW - (itemW % intSpeed)) / intSpeed;
	vtimes = (itemW - (itemW % intW)) / intW;
	lastW = intW + (itemW % intSpeed);
	
	scrollOnce();
}

function move(to)
{
	if(to != current)
	{
		var np = "";
		speed = moveSpeed;
		nowPause = longPause;
		
		block1 = vitems[current];
		if(current < to) np = "next";
		else np = "prev";
		nCurrent = to;
		block2 = vitems[nCurrent];
		dSpeed = speed;
		dOrder = np;
		
		block2.style.left = itemW + "px";
		block2.style.visibility = "visible";
		
		intSpeed = (dSpeed - (dSpeed % uSpeed)) / uSpeed;
		intW = (itemW - (itemW % intSpeed)) / intSpeed;
		vtimes = (itemW - (itemW % intW)) / intW;
		lastW = intW + (itemW % intSpeed);
		
		scrollOnce();
	}
}

function getSecondBlock(order)
{
	if(order == "next")
	{
		if(current == (total - 1))
		{
			return 0;
		}
		else
		{
			return (current + 1);
		}
	}
	else
	{
		if(current == 0)
		{
			return (total - 1);
		}
		else
		{
			return (current - 1);
		}
	}
}

function scrollOnce()
{
	if(curLeft < itemW)
	{
		if((curLeft + lastW) == itemW) curLeft = curLeft + lastW;
		else curLeft = curLeft + intW;
		
		if(dOrder == "next")
		{
			block1.style.left = -curLeft + "px";
			block2.style.left = -curLeft + itemW + "px";
		}
		else
		{
			block1.style.left = curLeft + "px";
			block2.style.left = curLeft - itemW + "px";
		}
		moveTO = setTimeout("scrollOnce()", uSpeed);
	}
	else
	{
		clearTimeout(moveTO);
		curLeft = 0;
		block1.style.visibility = "hidden";
		block1.style.left = "";
		block2.style.left = 0;
		current = nCurrent;
		currentNextPrev();
		currentButton(current);
		clearTimeout(autoScrollTO);
		autoScrollTO = setTimeout("startAutoScroll()", nowPause);
	}
}

function startAutoScroll()
{
	clearTimeout(firstScrollTO);
	moveNext(moveSpeed);
	nowPause = shortPause;
	autoScrollTO = setTimeout("startAutoScroll()", shortPause);
}

