var top_h = 0;
var current_ind = 1;
var hover_ind = 1;
var _action = 0;
var _arrow_timer;
var _arrow_left = 0;
var offset_left = 0;
var arrow_step = 20;
var animation_arrow = 350;
var _cityTimer;
var _city_Width = 0;
var _city_Height = 0;
var _city_Width_step = 1; //Изначальный шаг с которым увеличивается (уменьшается) ширина городов
var _city_Height_step = 1; //Изначальный шаг с которым увеличивается (уменьшается) Высота городов
var _city_step = 50; //Количество шагов (регулируется для скорости)
var _city_refresh = 0;
var _refresh_timer;
var _partner_width = 0;
var _partner_step = 0;
var _current_left = 0;
var _parent_max = 0;

var FADEIN_DELAY = 100; // задержка при наведении
var FADEOUT_DELAY = 30000; // задержка после ухода курсора
var FADEIN_DURATION = 600; // продолжительность появления
var FADEOUT_DURATION = 600; // продолжительность затухания
var ARROW_SLIDING_DURATION = 300; // продолжительность анимации стрелки
var PARTNER_SCROLLING_SPEED = 3000; // скорость прокрутки списка партнеров

var gFadeInTimerID, gFadeOutTimerID;
var gPartnerWidth;

var _setting = {
	speed:30, //Задержка в мс
	arr_li:new Array(), //элементы
	max:0
};

if( navigator.appName == "Microsoft Internet Explorer"){
	_setting.speed = _setting.speed/2;
}

function point_over(step){
	var margin = Math.round(arrow_step/2);
	$("#arrow").stop().animate({left: ( step * arrow_step - 10 ) + "%", top: "0px"}, {easing: 'linear', duration: animation_arrow});
}

function point_out(){
	var margin = Math.round(arrow_step/2);
	$("#arrow").stop().animate({left: ( current_ind * arrow_step - 10 ) + "%", top: "0px"}, {easing: 'linear', duration: animation_arrow});
}

function setPoint(o,ind){
	var arr_a = o.getElementsByTagName("a");
	for(var j=0; j<arr_a.length; j++){
		arr_a[j].setAttribute("onClick","slide("+ind+");return(false);");
	}
}

var ts;
var th;

function clear_op(){
	if(( _action==0 )||( _action > 1 )){
		clearTimeout(ts);
		clearTimeout(th);
		for(var j=0; j<_setting.arr_li.length; j++){
			if(j+1 != current_ind){
				_setting.arr_li[j].style.opacity = 0;
				_setting.arr_li[j].style.filter = 'alpha(opacity=0)';
			}else{
				_setting.arr_li[j].style.opacity = 1;
				_setting.arr_li[j].style.filter = 'alpha(opacity=100)';
			}
		}
	}
}

function prepare(i1,i2,to_main){
	_setting.arr_li[i2-1].style.zIndex = 98;
	_setting.arr_li[i2-1].style.opacity = 0;
	_setting.arr_li[i2-1].style.filter='alpha(opacity=0)';
	
	_setting.arr_li[i1-1].style.zIndex = 97;
	_setting.arr_li[i1-1].style.opacity = 1;
	_setting.arr_li[i1-1].style.filter='alpha(opacity=100)';
}

function refrefh_main(){
	/*prepare(current_ind,-1,0);
	_action = 1;
	current_ind = -1;
	hover_ind = -1;
	SmoothShow(_setting.default_li.id, 1, 0);*/
}

function SmoothShow(objId, x, op)
{
	obj = document.getElementById(objId);
	//op = (obj.style.opacity)?parseFloat(obj.style.opacity):parseInt(obj.style.filter)/100;

	if(op < x)
	{
		op += 0.05;
		obj.style.opacity = op;
		obj.style.filter='alpha(opacity='+op*100+')';
		ts = setTimeout('SmoothShow(\''+objId+'\', '+x+','+op+')',_setting.speed);
	}else{
		_action++;
		clear_op();
		if( hover_ind != current_ind ){
			_action = 1;
			prepare(current_ind,hover_ind,0);
			ts = setTimeout('SmoothShow(\''+_setting.arr_li[hover_ind-1].id+'\', 1, 0)',200);
			//SmoothShow(_setting.arr_li[hover_ind-1].id,1);
			current_ind = hover_ind;
		}
		clearTimeout(_refresh_timer);
		if(current_ind != 0) _refresh_timer = setTimeout("slide(1)",60000);
	}
}

function slide(ind){
	hover_ind = ind;
	if(( current_ind != ind )&&(( _action == 0 )||( _action > 1 ))){
		_action = 1;

		prepare(current_ind,ind,0);

		//SmoothHide(_setting.arr_li[current_ind-1].id,0);
		SmoothShow(_setting.arr_li[ind-1].id,1,0);

		current_ind = ind;
	}
}

function init_slide(){
	$('.show_point:gt(0)').hide();
	$('.logo a').click(function(){
		$('.show_point:gt(0)').stop(1).fadeTo(FADEOUT_DURATION, 0).css('z-index', 0);
		$('.show_point:eq(0)').stop(1).fadeTo(FADEIN_DURATION, 1).css('z-index', 1);
		$('#arrow').stop(1).fadeTo(FADEOUT_DURATION, 0);
	});
	$('.point').each(function(i, el){
		$(el).bind({
			mouseenter: function(){
				clearTimeout(gFadeOutTimerID);
				gFadeInTimerID = setTimeout(function(){
					$('.show_point').stop(1).fadeTo(FADEOUT_DURATION, 0).css('z-index', 0);
					$('.show_point:eq(' + (i + 1) + ')').stop(1).fadeTo(FADEIN_DURATION, 1).css('z-index', 1);
					var width = 10;
					$('.point:lt(' + i + ')').each(function(i, el){
						width += parseInt($(el).css('width')) + 30 + 72;
					});
					if ($('#arrow').css('opacity') == '1' && $('#arrow').css('display') != 'none') $('#arrow').animate({ marginLeft: (width + (parseInt($('.point:eq(' + i + ')').css('width')) + 20) / 2) }, ARROW_SLIDING_DURATION);
					else $('#arrow').stop(1).fadeTo(FADEIN_DURATION, 1).css({ marginLeft: (width + (parseInt($('.point:eq(' + i + ')').css('width')) + 20) / 2) });
				}, FADEIN_DELAY);
			},
			mouseleave: function(){
				clearTimeout(gFadeInTimerID);
				gFadeOutTimerID = setTimeout(function(){
					$('.show_point:gt(0)').stop(1).fadeTo(FADEOUT_DURATION, 0).css('z-index', 0);
					$('.show_point:eq(0)').stop(1).fadeTo(FADEIN_DURATION, 1).css('z-index', 1);
					$('#arrow').stop(1).fadeTo(FADEOUT_DURATION, 0);
				}, FADEOUT_DELAY);
			}
		});
	});
/*	var arr_tag = document.getElementsByTagName("div");
	var i = 1;
	for (var key in arr_tag) {
		var obj = arr_tag[key];
		if( obj.className == "point" ){
			i++;
			setPoint(obj,i);
			//obj.setAttribute("onClick","slide("+i+");return(false);");
			//obj.setAttribute("onMouseOver","slide("+i+");point_over(" + i + ");");
			//obj.setAttribute("onMouseOut","point_out();");
		}
	}

	_setting.max = i;
	arrow_step = Math.round(100/_setting.max);
	var ul = document.getElementById("slide_ul");
	var arr_li = ul.getElementsByTagName("li");
	var arr_li_act = new Array();
	var k = 0;
	for(var j=0; j<_setting.max; j++){
		if( arr_li[j].className == "default_point" ){
			_setting.default_li = arr_li[j];
			_setting.default_li.setAttribute("id","default_to_effect");
		}
		if( arr_li[j].className == "show_point" ){
			if(k != 0){
				arr_li[j].style.opacity = 0;
				arr_li[j].style.filter = 'alpha(opacity=0)';
			}else{
				arr_li[j].style.opacity = 1;
				arr_li[j].style.filter = 'alpha(opacity=100)';
			}
			//opacity: 0.3; filter: alpha(opacity=30);
			arr_li[j].setAttribute("id","show_effect" + (k+1));
			arr_li_act[k] = arr_li[j];
			k++;
		}
	}
	_setting.arr_li = arr_li_act;*/
}

function drag_city(value){
	var obj = document.getElementById('location_list');
	if(value > 0){
		if( obj.style.display != "block" ){
			obj.style.width = "0px";
			obj.style.height = "0px";
			obj.style.display = "block";
		}
		if(( obj.offsetWidth < _city_Width )||( obj.offsetHeight < _city_Height )){
			if( obj.offsetWidth < _city_Width ) obj.style.width = (obj.offsetWidth + _city_Width_step-8) + 'px';
			if( obj.offsetHeight < _city_Height )obj.style.height = (obj.offsetHeight + _city_Height_step) + 'px';
			_cityTimer = setTimeout("drag_city("+value+")",5);
		}
	}
	if(value < 0){
		var do_it1 = false;
		var do_it2 = false;
		if(( obj.offsetWidth > 0 )||( obj.offsetHeight > 0 )) {
			if( obj.offsetWidth > 0 ) if(obj.offsetWidth - _city_Width_step - 28 < 0){
				obj.style.width="0px";
				do_it1 = true;
			}else obj.style.width = (obj.offsetWidth - _city_Width_step - 28) + 'px';
			if( obj.offsetHeight > 0 ) if(obj.offsetHeight - _city_Height_step - 22 < 0){
				obj.style.height="0px";
				do_it2 = true;
			}else obj.style.height = (obj.offsetHeight - _city_Height_step - 22) + 'px';
			if(( !do_it2 )||( !do_it2 )) _cityTimer = setTimeout("drag_city("+value+")",5); else{
				obj.style.display = "none";
				if(_city_refresh > 0){
					var ajax = new ajaxQuery();
					document.getElementById("location_list").innerHTML = ajax.query("ajax_city.php",{
						type:"location_list",
						change:_city_refresh
					},"get");
				}
				_city_refresh = 0;
			}
		}else{
			obj.style.display = "none";
			if(_city_refresh > 0){
				var ajax = new ajaxQuery();
				document.getElementById("location_list").innerHTML = ajax.query("ajax_city.php",{
					type:"location_list",
					change:_city_refresh
				},"get");
			}
			_city_refresh = 0;
		}
	}
}

function empty( mixed_var ) {
    return ( mixed_var === "" || mixed_var === 0   || mixed_var === "0" || mixed_var === null  || mixed_var === false );
}


function reload_city(ind){
	var ajax = new ajaxQuery();
	_city_refresh = ind;
	document.getElementById("cityTitle").innerHTML = ajax.query("ajax_city.php",{
		type:"city_name",
		change:ind
	},"get");
	document.getElementById("phone").innerHTML = ajax.query("ajax_city.php",{
		type:"info",
		change:ind
	},"get");
	drag_city(-1);
    /*
	loaddata("ajax_city.php?type=location_list&change="+ind,"location_list");

	setTimeout("loaddata('ajax_city.php?type=city_name&change="+ind+"','cityTitle')",500);

	setTimeout("loaddata('ajax_city.php?type=info&change="+ind+"','location_info')",1000);*/
}

function f_city(ind){
	clearTimeout(_cityTimer);
	drag_city(ind);
}

function init_city(){
	var obj = document.getElementById('location_list');
	obj.style.display = "block";
	_city_Width = obj.offsetWidth;
	_city_Height = obj.offsetHeight+13;
	_city_Width_step = 15;//  _city_Width/_city_step;
	_city_Height_step = 20;//  _city_Width/_city_step;
	obj.style.display = "none";
}

var tt2;

function slide_partner_left(){
	var obj = document.getElementById("partner_line");
	var left = obj.offsetLeft;
	var td_arr = obj.getElementsByTagName("div");
	var left_curr = td_arr[_current_left].offsetLeft; 
	left_curr -= 35;
	if( left_curr < 0 ){
		var ab = left + _partner_width - 10;
	}else{
		var ab = left_curr + left;
	}
	left -= 15;	
	
	if( -left >= _partner_width ) left = _partner_width + left;
	if( left >= 0 ) left = -_partner_width + left;
	
	obj.style.left = (left)+"px";
	
	if( ab<0 ) ab = -ab;
	if( ab > 10 )
	tt2 = setTimeout("slide_partner_left()",30);
}

function slide_partner_right(){
	var obj = document.getElementById("partner_line");
	var left = obj.offsetLeft;
	var td_arr = obj.getElementsByTagName("div");
	var left_curr = td_arr[_current_left].offsetLeft; 
	left_curr -= 35;
	if( left_curr < 0 ){
		//if( _partner_width > left )
			ab = left + _partner_width - 10;
			//	else
				//	ab = 0;
	}else{
		var ab = left_curr + left;
	}
	left += 15;	
	
	if( -left >= _partner_width ) left = _partner_width + left;
	if( left >= 0 ) left = -_partner_width + left;
	
	obj.style.left = (left)+"px";
	
	if( ab<0 ) ab = -ab;
	if( ab > 10 )
		tt2 = setTimeout("slide_partner_right()",30);
}

function slide_left(){
	if ($('#partner_line').queue().length) return;
	$('#partner_line').css({ left: (parseInt($('#partner_line').css('left')) % gPartnerWidth) });
	$('#partner_line').animate({ left: '-=' + ($('#partner_line').parent().parent().width() - 100) }, PARTNER_SCROLLING_SPEED);

	/*clearTimeout(tt2);
	_current_left += 1;
	if( _current_left == _parent_max ) _current_left = 0;
	tt2 = setTimeout("slide_partner_left()",1);*/
}

function slide_right(){
	if ($('#partner_line').queue().length) return;
	$('#partner_line').css({ left: -2 * gPartnerWidth + (parseInt($('#partner_line').css('left')) % gPartnerWidth) });
	$('#partner_line').animate({ left: '+=' + ($('#partner_line').parent().parent().width() - 100) }, PARTNER_SCROLLING_SPEED);

	/*clearTimeout(tt2);
	_current_left -= 1;
	if(_current_left<0) _current_left = _parent_max;
	tt2 = setTimeout("slide_partner_right()",1);*/
}

function is_int( mixed_var ) {   
    var y = parseInt(mixed_var * 1);   
    if (isNaN(y)) {   
        return false;   
    }       
    return mixed_var == y && mixed_var.toString() == y.toString();    
}  

function init_partner_slide(){
	gPartnerWidth = $('#partner_line').width();
	$('#partner_line').html($('#partner_line').html() + $('#partner_line').html() + $('#partner_line').html() + $('#partner_line').html());
	$('#partner_line').css({ left: -gPartnerWidth });
	onResize();
	window.onresize = onResize;

	/*var obj = document.getElementById("partner_line");
	var div = obj.getElementsByTagName("div");
	_partner_width = 0;
	
	for( k in div ){
		if( is_int(k) ){
			var n_o = div[k];
			if( _partner_step < n_o.offsetWidth ) _partner_step = n_o.offsetWidth;
			_parent_max++;
			_partner_width += n_o.offsetWidth;	
		}
	}
	
	obj.style.width = (4*_partner_width)+"px";
	obj.innerHTML += obj.innerHTML + obj.innerHTML;
	  //slide_partner();*/
}

function onResize(){
	$('#partner_line').parent().parent().css({ width: 'auto' });
	var width = $('#partner_line').parent().parent().width() - 100;
	var item_width = $('#partner_line div').width() + parseInt($('#partner_line div').css('margin-left')) + parseInt($('#partner_line div').css('margin-right')) + parseInt($('#partner_line div').css('padding-left')) + parseInt($('#partner_line div').css('padding-right'));
	while (width % item_width) width--;
	$('#partner_line').parent().parent().css({ width: width + 100, marginLeft: 'auto', marginRight: 'auto' });
}

//Get filials
		function getFilials(city) 
		{
			$("select#filialSelect").hide();
			//alert("city_id="+city);
			$.ajax({  
			type: "POST",  
			url: "http://www.u-energo.ru/ajax_filials.php",  
			data: "city_id="+city ,  
			dataType: "json",  
			success: function(j){ 		
						var options = '';
						options += 	'<option value="0">Выбрать филиал...</option>';							
						for (var i = 0; i < j.length; i++) {
							options += '<option value="' + j[i].id + '">' + j[i].title + '</option>';
						}
						$("select#filialSelect").html(options);
						$("select#filialSelect").css('display', 'inline-block');
						}
						
						//alert(data);
			
			});    		
		};
