

(function() {
	var listenPh = setInterval((function() {
		var ph = document.getElementById('baraban-placeholder');

		if (ph) {
			clearInterval(listenPh);

			ph.innerHTML = '<div id="portals-baraban"><div class="baraban-button" id="baraban-prev"></div><div class="baraban-wrapper"><div id="baraban"><div><a href="http://cinema.akado.ru/" class="cinema" title="Кино"><img src="http://my.akado.ru/ai/portal/22/baraban/cinema.gif" width="42" height="17" alt="Кино" /></a><a href="http://radio.akado.ru/" class="radio" title="Радио"><img src="http://my.akado.ru/ai/portal/14/baraban/radio.gif" width="50" height="17" alt="Радио" /></a><a href="http://probki.akado.ru/" class="probki" title="Пробки"><img src="http://my.akado.ru/ai/portal/11/baraban/probki.gif" width="54" height="18" alt="Пробки" /></a><a href="http://news.akado.ru/" class="news" title="Новости"><img src="http://my.akado.ru/ai/portal/13/baraban/news.gif" width="59" height="17" alt="Новости" /></a></div> <div><a href="http://video.akado.ru/" class="video" title="Видео"><img src="http://my.akado.ru/ai/portal/34/baraban/video.gif" width="53" height="16" alt="Видео" /></a><a href="http://antivirus.akado.ru/" class="antivirus" title="Антивирус"><img src="http://my.akado.ru/ai/portal/10/baraban/antivirus.gif" width="70" height="17" alt="Антивирус" /></a><a href="http://games.akado.ru/" class="arcade" title="Игры"><img src="http://my.akado.ru/ai/portal/17/baraban/arcade.gif" width="47" height="17" alt="Игры" /></a><a href="http://soft.akado.ru/" class="soft" title="Софт"><img src="http://my.akado.ru/ai/portal/19/baraban/soft.gif" width="46" height="17" alt="Софт" /></a></div> <div><a href="http://gamesoft.akado.ru/" class="gamesoft" title="Геймсофт"><img src="http://my.akado.ru/ai/portal/20/baraban/gamesoft.gif" width="70" height="17" alt="Геймсофт" /></a><a href="http://mail.akado.ru/" class="mail" title="Почта"><img src="http://my.akado.ru/ai/portal/8/baraban/mail.gif" width="49" height="18" alt="Почта" /></a><a href="https://files.akado.ru/" class="files" title="Файлы"><img src="http://my.akado.ru/ai/portal/9/baraban/files.gif" width="55" height="17" alt="Файлы" /></a><a href="http://forum.akado.ru/" class="forum" title="Форум"><img src="http://my.akado.ru/ai/portal/7/baraban/forum.gif" width="53" height="18" alt="Форум" /></a></div> <div><a href="http://desktop.akado.ru/" class="desktop" title="Десктоп"><img src="http://my.akado.ru/ai/portal/26/baraban/desktop.gif" width="63" height="17" alt="Десктоп" /></a><a href="http://mcontent.akado.ru/" class="mcontent" title="Мобильный контент"><img src="http://my.akado.ru/ai/portal/29/baraban/mcontent.gif" width="125" height="18" alt="Мобильный контент" /></a><a href="http://www.akado-service.ru/" class="service" title="Сервис"><img src="http://my.akado.ru/ai/portal/31/baraban/myservice_ico.png" width="56" height="18" alt="Сервис" /></a></div></div></div><div class="baraban-button" id="baraban-next"></div></div>';

			initBaraban();
		}
	}), 100);

	function initBaraban() {
		var portalsBaraban = document.getElementById('portals-baraban');
		var baraban = document.getElementById('baraban');

		var portals = baraban.getElementsByTagName('a');
		var visible = baraban.getElementsByTagName('div');
		var barabanWidth = baraban.parentNode.clientWidth;
		baraban.style.width = visible.length * barabanWidth + 'px';

		var padding, vector, shift, go;
		for (var j = 0; j < visible.length; j++) {
			var vis = visible[j];

			if(j == visible.length - 1) {
				var t_shift = 0;

				while (vis.getElementsByTagName('a').length < 3) {
					var adding_node = portals[t_shift].cloneNode(true);
					adding_node.style.padding = 0;
					vis.appendChild(adding_node);
					t_shift++;
				}
			}

			padding = Math.floor((barabanWidth - vis.clientWidth) / vis.childNodes.length / 2);

			for (var i = 0; i < vis.childNodes.length; i++) {
				vis.childNodes[i].style.padding = '0 ' + padding + 'px';
			}
		}

		var steps = 16;
		var dx = barabanWidth / steps;
		portalsBaraban.onclick = function(e) {
			if (!e) {
				var e = window.event;
				e.target = e.srcElement;
			}

			offset = baraban.offsetLeft;
			go = false;

			if (offset % barabanWidth) {
				return null;
			}

			if ('baraban-next' == e.target.id) {
				vector = -1;
				shift = (offset < -barabanWidth * (baraban.clientWidth/barabanWidth - 2)) ? barabanWidth : offset;
				go = true;
			}

			if ('baraban-prev' == e.target.id) {
				vector = 1;
				shift = (!offset) ? -baraban.clientWidth  : offset;
				go = true;
			}

			if (go) {
				for (var i = 0; i < steps; i++) {
					setTimeout(function() {
						shift += dx * vector;
						baraban.style.left = shift + 'px';
					}, i * i);
				}
			}
		}

		portalsBaraban.onmousedown = function() {return false;}
		portalsBaraban.onselectstart = function() {return false;}
		portalsBaraban.className = 'baraban-ready';
	}
})();
