window.addEvent('domready', function() {
	MooTools.lang.setLanguage("ru-RU-unicode");
	
	// aaha
	window.$$chk = function(el) {
		return $chk($(el));
	};
	
	// Expand-collapse LIs
	$$('ul.collapsable').each(function(ul){
		ul.getChildren('li').each(function(li){
			li.aHide = function() {
				li.removeClass('expanded');
				li.expanded = false;
				
				li.getElement('div').dissolve();
			};
			
			li.aShow = function() {
				li.addClass('expanded');
				li.expanded = true;
				
				li.getElement('div').reveal();
			};
			
			li.aToggle = function() {
				if (!li.expanded) {
					var loser = ul.getElement('li.expanded');
					$chk(loser) && loser.aHide();
					li.aShow();
				}
				else li.aHide();
			}
			
			li.aHide();
			
			li.getElement('h5>a').addEvent('click', function() { li.aToggle(); return false; });
		});
		/*var firstli = ul.getElements('li')[0];
		$chk(firstli) && firstli.aToggle();*/
	});
	
	// Banner scroller
	if ($$chk('banners')) {
		var bengine = $('banners');
		var bscroller = $('bscroller');
		
		var blarr = $('blarr');
		var brarr = $('brarr');
		
		//var bwidth = 920; //parseInt($('bover').getStyle('width'));
		var bwidth = 184; // one banner per scroll mode
		var cleft = 0;
		
		var page = 1;
		
		//count pages
		var sp = 0;
		/*bscroller.getElements('a').each(function(i){
			if (i.hasClass('banner2x')) sp+=2;
			else if (i.hasClass('banner3x')) sp+=3;
			else if (i.hasClass('banner4x')) sp+=4;
			else if (i.hasClass('banner5x')) sp+=5;
			else sp++;
		});
		var pages = parseInt(sp/5);*/
		var pages = bscroller.getElements('a').length;

		transfer = function() {
//      	alert(bscroller.innerHTML);
     	var first_node = bscroller.firstChild;
     	while (first_node.nodeType != 1) first_node = first_node.nextSibling;
     	var node = first_node.cloneNode(true);
     	bscroller.removeChild(first_node);
    	bscroller.appendChild(node);
    	var left = (bscroller.style.left.length) ? parseInt(bscroller.style.left) : 0;
    	left += bwidth;
    	bscroller.style.left = '0px';
    	//alert(window.scroll_off);
    	if (window.scroll_off) return;
			//bengine.bensanity =
			setTimeout(function(){
				if (window.scroll_off) return;
        bengine.scrollPage(1);
			},3000);
    	
//       	alert('после: '+ bscroller.style.left);
		};

		bengine.scrollPage = function(n) {
// 			if (page+n <= 0 || page+n > pages-4) return false;
// 			if (page+n <= 0) {
// 				page = pages-4;
// 			} else if (page+n > pages-4) {
// 				page = 0;
// 			} else page += n;
// 			this.resetBarrs(page);
// 			page += n;

			//cleft = cleft-(n*bwidth);
// 			bscroller.tween('left', cleft).chain(
// 			alert('до : ' + bscroller.style.left);
			if (n == 1){
				bscroller.style.left = '0px';
				bscroller.tween('left', -bwidth+'px').chain(
	      	transfer()
				);
				return true;
			}else{
// 				alert(bscroller.style.left);
      	bscroller.style.left = parseInt(bscroller.style.left) - bwidth + 'px';
			 	var last_node = bscroller.lastChild;
  	   	while (last_node.nodeType != 1) last_node = last_node.previousSibling;
	     	var node = last_node.cloneNode(true);
	     	bscroller.removeChild(last_node);
	    	bscroller.insertBefore(node,bscroller.firstChild);
	    	var left = parseInt(bscroller.style.left) + bwidth + 'px';
        bscroller.tween('left', left + 'px');
			}
		}.bind(bengine);
		
		bengine.resetBarrs = function(p) {
			if (p==1) blarr.hide();
				else blarr.show();

			if (p==pages) brarr.hide();
				else brarr.show();
		};
// 		bengine.resetBarrs(1);
		
		blarr.addEvent('click', function() {
			window.scroll_off = true;
			//alert(window.scroll_off);
			bengine.scrollPage(1);
// 			window.clearInterval(window.bensanity);
			return false;
		});
		
		brarr.addEvent('click', function() {
  		window.scroll_off = true;
  		//alert(window.scroll_off);
			bengine.scrollPage(-1);
// 			window.clearInterval(bengine.bensanity);
			return false;
		});
		
		bengine.bdr = 1;
		bengine.scrollPage(1);
// 		bengine.bensanity = window.setInterval(function() {
// 			this.scrollPage(this.bdr);
// // 			if (!this.scrollPage(this.bdr)) {
// // 				this.bdr*=-1;
// // 				this.scrollPage(this.bdr);
// // 			}
// 		}.bind(bengine), 3000);
	}
	
	// Example showbox with blackjack and stuff
	
	var Showbox = new Class({
		sbOverlay: $('sbOverlay'),
		showbox: $('showbox'),
		ssels: $('sbScreenSelectors'),
		sbContent: $('sbContent'),
		
		pdata: {
			slides: [
				"hello",
				"hiiii",
				"yaaay"
			]	
		},
		
		activeSlide: 0,
		totalSlides: 0,
		
		ppState: false,
		ppInterval: null,
		
		sbw: 580, sbh: 538,
		
		open: function() {
			var bsize = document.body.getScrollSize();
					
			this.sbOverlay.morph({
				height: bsize.y,
				opacity: 0.8
			});
			
			this.showbox.setStyles({
				top: document.body.getScroll().y + window.getSize().y/2 - this.sbh/2,
				left: bsize.x/2 - this.sbw/2
			})
			.reveal();
		},
		
		close: function() {					
			this.sbOverlay.morph({
				height: 0,
				opacity: 0
			});
			
			this.showbox.dissolve();
			
			return false;
		},
		
		scrollToSlide: function(n) {
			this.sbContent.set('html', this.pdata.slides[n]);
			dobc(this.sbContent);
			this.ssels.getChildren().removeClass('active');
			this.ssels.getChildren()[n].addClass('active');
			this.activeSlide = n;
			return false;	
		},
		
		scrollSlide: function(delta) {
			var ns = this.activeSlide+delta;
			if (ns<0 || ns >= this.totalSlides) return false;
			return this.scrollToSlide(ns);
		},
		
		scrollSlideBack: function() { return this.scrollSlide(-1) },
		scrollSlideFwd: function() { return this.scrollSlide(+1) },
		
		initialize: function() {
			if (!$chk(this.showbox)) return;
			
			if (Browser.Engine.trident) {
				//this.sbOverlay.setStyle('display', 'none');
				this.sbOverlay.inject(document.body);
				this.showbox.inject(document.body);
			}
			
			$$('.exlinks a.item').each(function(a) {
				a.addEvent('click', function() {
					this.open();
					
					var xhr = new Request.JSON({
						url: a.get('href'),
						onSuccess: function(data) {
							this.pdata = data;
							this.totalSlides = this.pdata.slides.length;
							this.ssels.empty();
							
							$A(this.pdata.slides).each(function(i, n){
								var aa = {};
								this.ssels.adopt(
									aa = new Element('a', {href: '#'}).addEvent('click', function(){
										return this.scrollToSlide(n);
									}.bind(this))
								);
							}.bind(this));
							this.ssels.getChildren()[0].addClass('active').fireEvent('click');
						}.bind(this)
					}).get();
					
					
					
					return false;
				}.bind(this));
			}.bind(this));
			
			$('sbClose').addEvent('click', this.close.bind(this));
			this.sbOverlay.addEvent('click', this.close.bind(this));
			
			$('sbCback').addEvent('click', this.scrollSlideBack.bind(this));
			$('sbCfwd').addEvent('click', this.scrollSlideFwd.bind(this));
			
			$('sbPP').addEvent('click', function() {
				if (!this.ppState) {
					this.ppState = true;
					this.ppInterval = setInterval(function() {
						this.scrollSlideFwd();
					}.bind(this), 5000);
					$('sbPP').removeClass('play').addClass('pause');
				}
				else {
					this.ppState = false;
					clearInterval(this.ppInterval);
					$('sbPP').removeClass('pause').addClass('play');
				}
				
				return false;
			}.bind(this));
		}
	});
	
	window.sb = new Showbox();
	
	
	if ($$chk('hbubble')) {
		var ft = $$('#faqtoggle a')[0];
		var at = $$('#asktoggle a')[0];
		
		ft.addEvent('click', function(e) {
			e.stop();
			ft.addClass('active');
			at.removeClass('active');
			
			$('faqb').show();
			$('askb').hide();
		});
		
		at.addEvent('click', function(e) {
			e.stop();
			at.addClass('active');
			ft.removeClass('active');
			
			$('faqb').hide();
			$('askb').show();
		});
		
		$('askb').hide();
	}
	
	if ($$chk('balloon')) {
		var ba = $('balloon');
		var vah = 220;

		ba.set('move', {
			position: 'upperLeft',
			edge: 'upperLeft'
		});


		var descrs = $H({
			'#l_coolnumber'	: '<img src="/img/hints/6.png"  id="sweetimg"/>Живите красиво.',
			'#l_vip'		: '<img src="/img/hints/4.png"  id="sweetimg"/>Приправьте свой заказ острыми ощущениями!',
			'#l_write'		: '<img src="/img/hints/5.png"  id="sweetimg"/>Требуйте высоких стандартов обслуживания!',
			'#l_write1'		: '<img src="/img/hints/5.png"  id="sweetimg"/>Автоматическая запись разговоров. В этом случае записываются все звонки, пришедшие на виртуальный номер.',
			'#l_write2'		: '<img src="/img/hints/5.png"  id="sweetimg"/>Запись разговора по запросу пользователя. Разговор будет записан только в том случае, если во время разговора пользователь нажмет определенную клавишу телефонного аппарата.',
			'#bigbro'		: 'Большой Брат следит',
			'#auto_hello' : 'Вы дозвонились в интернет-магазин компании «Ваш отличный автомобиль». Оставайтесь на линии и вам обязательно ответят!',
			'#auto_mnu' : 'Вас приветствует группа компаний «Ваш отличный автомобиль». Если вы желаете приобрести автозапчасти нажмите 1. Если вы желаете приобрести автоаксессуары нажимите 2. Для отправки факса нажмите 0 или дождитесь ответа секретаря.',
			'#cons_down': 'Здравствуйте! Вы позвонили в группу компаний «Эксклюзив консалтинг групп». Убедитесь, что ваш телефон работает в тональном режиме. Для изменения импульсного режима на тональный нажмите *. Для соединения со специалистами бухгалтерского учета и аудита нажмите 1. Для соединения со специалистами по вопросам юридических услуг и регистрации фирм нажмите 2. Чтобы прослушать контатную информацию нажмите 3. Для отправки факса нажмите 4. Для возврата в начало меню нажмите 0 или дождитесь ответа секретаря.',
			'#cons_up': 'Здравствуйте! Вы позвонили в группу компаний «Эксклюзив консалтинг групп». Мы работаем в будни с 10 до 19 часов по московскому времени. Вы можете перезвонить нам или оставить звуковое сообщение. Для этого в тональном режиме нажмите 1. Для отправки факса нажмите 2. Чтобы прослушать контактную информацию нажмите 3. Для возврата в начало меню нажмите 0.',
			'#geo_up': 'Здравствуйте! Вы позвонили в компанию «ГеоСтиль». Если вы хотите отправить факс нажмите 1 или дождитесь ответа специалиста.',
			'#geo_down': 'Здравствуйте! Вы позвонили в компанию «ГеоСтиль». Мы работаем в будни с 10 до 18 часов по московскому времени. Вы можете перезвонить нам в рабочее время. Для отправки факса нажмите 1. Чтобы прослушать контактную информацию нажмите 3. Для возврата в начало меню нажмите 0.',
			'#geo_about': 'Наша основная специализация - продажа вяжущих материалов отечественного производства: гибс, цемент, известь, сухих строительных смесей и перегородочных материалов, гибсовые плиты и ДСП. Информацию о нашей компании вы сможете получить посетив наш сайт <a href="http://www.geogibs.ru">www.geogibs.ru</a>. Для возврата в начало меню нажмите 0.',
			'#paritet': 'Здравствуйте! Вы позвонили в компанию «Паритет». Пожалуйста, оставайтесь на линии и вам обязательно ответят.',
				"#topic1" : '<img src="/img/hints/1.png"  id="sweetimg"/>Точно знаете, что хотите? – Заказывайте!',
				"#topic2" : '<img src="/img/hints/2.png"  id="sweetimg"/>Нужна консультация? – Спросите специалиста.',
				"#topic3" : '<img src="/img/hints/3.png"  id="sweetimg"/>Неформальное общение:)'
// 			'select#topic'	: $H({
// 				"1" : '<img src="/img/sweet.png"  id="sweetimg"/> И влезет-то всего пара слов',
// 				"2" : 'Заказать консультацию менеджера',
// 				"3" : 'ПодСказка'
// 			})
		});
		
		var mvbubble = function(inp) {
			ba.reveal();
// 			alert('qq');
			ba.move({
				relativeTo:inp,
// inp.offsetLeft + inp.offsetWidth + 50
				offset: {x: 450, y: inp.getScrollSize().y/2 - vah/2}
			});
			var flak = false;
			var bdi = ba.getElement('div');
			descrs.each(function(d,selector) {
				if (inp.match(selector)) {
					var rel = 0;
					if (typeof(d) == 'string') {
						bdi.set('html', d);
						flak = true;
					}
					else if (typeof(d) == 'object') {
						var sinp = inp.getElement('option[selected]');
						if (sinp != null)
						{
							rel = sinp.get('rel');
//
// 							if (rel == 1) $('wouldya').reveal();
// 							else $('wouldya').dissolve();

							var val = d[rel];
							if (val!=null) {
								bdi.set('html', val);
								flak = true;
							}
						}
					}

					if (Browser.Engine.trident) {
						bdi.setStyle('padding-top', ba.clientHeight/2-bdi.getScrollSize().y/2);
					}
				}
			});
			if (!flak) ba.dissolve();
		}

		if ($$chk('topic')) {
// 			var se = function() { mvbubble($('topic')) }();
// 			$('topic').addEvents({focus:  se, change: se});
		}else{
    	ba.style.display = 'none';
		}

// 		if ($$chk('.add input')) {
// 			$$('.add input').each(function(inp) {
// 				var ff = function() { mvbubble(inp) };
// 				inp.addEvents({focus: ff, mouseover: ff});
// 			});
// 		}
// 		if ($$chk('.add p label')) {
// 			$$('.add p label').each(function(lbl) {
// 				var ff = function() { mvbubble($(lbl.get('for'))) };
// 				lbl.addEvents({mouseover: ff});
// 			});
// 		}
    test_counter = 0;
    if ($$chk('topic')){
//         alert("!!!");
        var s2 = new CustomSelect($('topic'), {
        	theme : 'simplifica',
        	onSelect: function(el) {
	        	var num = 0;
						var li = el;
	        	while (li = li.previousSibling) {if (li.nodeType == 1) num++;}
	      	  el.id = document.getElementById('topic').options[num].id;
	      	  document.getElementById('topic').selectedIndex = num;
	      		mvbubble(el);
        	},
        	onChange: function(el) {
        	  document.getElementById('topic').onchange(document.getElementById('topic'));
        	}
      });
			document.getElementById('selectadiv').addEvents({mouseover: function(){
				var div = this.firstChild;
				while (div.nodeType != 1) div = div.nextSibling;
				var select = document.getElementById('topic');
				div.id = select.options[select.selectedIndex].id;
				mvbubble(div);
			}});
// 			 $('topic').addEvents({mousemove: function(){ document.getElementById('fio').value = ++test_counter;}});
// 			 $('topic').addEvents({focus: function(){mvbubble(this);}});
// 			 $('topic').addEvents({change: function(){mvbubble(this);}});
	 }
//     if ($$chk('consultmessage')) $('consultmessage').addEvents({mouseover: function(){mvbubble(this);}});
//     if ($$chk('topic1')) $('topic1').addEvents({mouseover: function(){mvbubble(this);}});
//     if ($$chk('topic2')) $('topic2').addEvents({mouseover: function(){mvbubble(this);}});
    if ($$chk('topic3')) $('topic3').addEvents({mousemove: function(){mvbubble(this);}});

		if ($$chk('l_vip')) {
			$('l_vip').addEvents({mouseover: function(){mvbubble(this);}});
			$('vip').addEvents({mouseover: function(){mvbubble($('l_vip'));}});
		}
    if ($$chk('l_coolnumber')){
			 $('l_coolnumber').addEvents({mouseover: function(){mvbubble(this);}});
			 $('coolnumber').addEvents({mouseover: function(){mvbubble($('l_coolnumber'));}});
		}
    if ($$chk('l_write')) {
			$('l_write').addEvents({mouseover: function(){mvbubble(this);}});
			$('write').addEvents({mouseover: function(){mvbubble($('l_write'));}});
    }
    if ($$chk('l_write1')) {
			$('l_write1').addEvents({mouseover: function(){mvbubble(this);}});
			$('write1').addEvents({mouseover: function(){mvbubble($('l_write1'));}});
		}
    if ($$chk('l_write2')) {
			$('l_write2').addEvents({mouseover: function(){mvbubble(this);}});
			$('write2').addEvents({mouseover: function(){mvbubble($('l_write2'));}});
		}


		if ($$chk('auto_hello')) $('auto_hello').addEvents({mouseover: function(){mvbubble(this);}});
		if ($$chk('auto_mnu')) $('auto_mnu').addEvents({mouseover: function(){mvbubble(this);}});
  	if ($$chk('cons_down')) $('cons_down').addEvents({mouseover: function(){mvbubble(this);}});
  	if ($$chk('cons_up')) $('cons_up').addEvents({mouseover: function(){mvbubble(this);}});
  	if ($$chk('geo_up')) $('geo_up').addEvents({mouseover: function(){mvbubble(this);}});
  	if ($$chk('geo_down')) $('geo_down').addEvents({mouseover: function(){mvbubble(this);}});
  	if ($$chk('geo_about')) $('geo_about').addEvents({mouseover: function(){mvbubble(this);}});
  	if ($$chk('paritet')) $('paritet').addEvents({mouseover: function(){mvbubble(this);}});
	}
	
	if ($$chk('managers')) {
		//var ninp = new Element('input', {'type': 'hidden', 'name': 'manager'}).inject($('managers'));
		var ninp = $('nman');
		$$('#managers_radio input').each(function(inp) {
			var ma = new Element('a', {'class': 'manager_block'});
			ma.adopt([
					new Element('img', {src: inp.get('rel')}),
					new Element('span', {'class': 'overlay'}),
					new Element('span', {'class': 'label', 'text': $$("#managers_radio label[for='" + inp.id + "']")[0].get('text')})
				])
				.inject($('managers'))
				.addEvent('click', function() {
					$$('#managers a').removeClass('active');
					ma.addClass('active');
					ninp.set('value', inp.get('value'));
					document.getElementById('email_manager').value = document.getElementById('e_'+inp.id).value;
				});
		});
		$$('#managers a')[0].fireEvent('click');
		$('managers_radio').dispose();
	}
	
	if ($$chk('orderform')) {
		var OFValidator = new Form.Validator.Inline($('orderform'), {
			
		});
	}
	window.dobc = function (wha) {
		if (!Browser.Engine.trident)
		wha.getElements('blockquote').each(function(i) {
			i.adopt([
				new Element('i', {'class': 'laquo'}),
				new Element('i', {'class': 'raquo'})
			]);
		});
	}
	dobc(document);
	
	new Fx.SmoothScroll(); // yarr

	if ($$chk('calc_block')) {
	  var node = document.getElementById('calc_block_div');
	  var w = document.getElementById('calc_block').clientWidth;
	  node.style.width = w + "px";
	  node.style.left = 500 - w/2 + "px";
	  while ((node.nodeType != 1) || (node.tagName.toUpperCase() != 'P')) node = node.nextSibling;
	  node.style.width = w + "px";
	}
});

function play(sourse,node){
	if (sourse == window.player_sourse){//old
	  if (node.className == 'player play'){
    	document.getElementById("player").SetVariable("player:jsPlay", "");
    	node.className = 'player pause';
    }else{
    	document.getElementById("player").SetVariable("player:jsPause", "");
    	node.className = 'player play';
		}
	}else{//play new
		document.getElementById("player").SetVariable("player:jsUrl", sourse);
	 	document.getElementById("player").SetVariable("player:jsPlay", "");
	 	window.player_sourse = sourse;
	 	if (window.player_node) window.player_node.className = 'player play';
	 	window.player_node = node;
	 	node.className = 'player pause';
	}
}

function checker(node,id){
		if (node.checked)
		  document.getElementById(id).style.display = 'block';
		else
    	document.getElementById(id).style.display = 'none';
}

function select(node){
		switch (node.selectedIndex)
		{
			case 0:
				document.getElementById('tarif').style.display = 'block';
				document.getElementById('consult').style.display = 'none';
				document.getElementById('free').style.display = 'none';
				break;
			case 1:
				document.getElementById('tarif').style.display = 'none';
				document.getElementById('consult').style.display = 'block';
				document.getElementById('free').style.display = 'none';
				break;
			case 2:
				document.getElementById('tarif').style.display = 'none';
				document.getElementById('consult').style.display = 'none';
				document.getElementById('free').style.display = 'block';
				break;
		}
}

function change_manager(node){
		var alias = node.id;
		document.getElementById('email_manager').value = document.getElementById('e_'+alias).value;
}
