function init()
{
	if($('top_img_index'))
	{
		$('sbs_cont').setOpacity(0);
		$('sbs_cont').style.display = 'block';

		$('top_img_index').getParent().setProperty('href',pic_array[0].href);
		fade_sbs();
	}
	//$('change_container').addEvent('click', function(){$('change_container').style.display = 'none';});
	/*
	if($$('img.close_button'))
	{
		var close = $$('img.close_button');
		for(i = 0; close.length; i++)
		{
			alert($(close[i]).tagName + ' ' + i);
			//$(close[i]).addEvent('click', function(){getRounded(this);})
		}
	}*/
	

	addPlacement();
}


//хак для ие6. в стилях писать class="png"
function fixPNG(element)
{
	if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
	{
		var src;
		
		if (element.tagName=='IMG')
		{
			if (/\.png$/.test(element.src))
			{
				src = element.src;
				element.src = "/blank.gif";
			}
		}
		else
		{
			src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)
			if (src)
			{
				src = src[1];
				element.runtimeStyle.backgroundImage="none";
			}
		}
		
		if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
	}
}

	total_load_img = 0;
animation_ready = false;
//считаем загруженные картинки
function count_img()
{
	total_load_img = total_load_img + 1;
	if(total_load_img >= (pic_array.length * 2)) 
	{
		animation_ready = true;
		fade_sbs();
	}
}
	


/*
* перетекание картинок в шапке на главной
*/
delay = 500;
i97 = 1;
i99 = 1;
duration = 4200;


function fade_sbs()
{
	//if(!animation_ready) return;
	var myFx = new Fx.Style('sbs_cont', 'opacity', {
			duration: duration, 
			wait: true, 
			onComplete: function(){
				wait();
			}
		}).start(0,1);
}

function wait()
{
	fade_sbs_dsc.delay(1800);
}

function fade_sbs_dsc()
{
	var myFx = new Fx.Style('sbs_cont', 'opacity', {
			duration: duration, 
			wait: true, 
			onComplete: function(){
				fade_img();
			}
		}).start(1,0);
}

function fade_img()
{
	var myFx = new Fx.Style('img_f', 'opacity', {
			duration: duration, 
			wait: true, 
			onComplete: function(){
				restore();
			}
		}).start(1,0);
}

function restore()
{
	$('img_f').style.backgroundImage = 'url(' + pic_array[i99].src + ')';
	$('top_img_index').getParent().setProperty('href',pic_array[i99].href);
	
	$('sbs_img').src = sbs_url[i99].src;
	$('sbs_div').style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + sbs_url[i99].src + "')";

	$('img_f').setOpacity(1);
	
	i99 = i99 + 1;
	if(i99 >= pic_array.length) i99 = 0;
	$('img_b').setOpacity(0);
	
	wait_bg.delay(500);//эта фигня с задержкой нужна для мозилы
}
function wait_bg()
{
	$('img_b').style.backgroundImage = 'url(' + pic_array[i99].src + ')';
	$('img_b').setOpacity(1);
	fade_sbs();
}

function title(obj)
{
	alert(obj.href);
}
/*
* конец перетекания картинок
*/

function calendar(s)
{
	var url = '/tpls/js_calendar.php' + s;
	//document.cookie = "calendar=" + s;
	var myAjax = new Ajax(
							url, 
							{
								method: 'get', 
								charset: 'utf-8', 
								update: $('js_calendar_container'),
								onComplete: function(){addPlacement();}
							}
						).request();
}

// запрашиваем след месяц
function select_afisha_month(id, tpl, lang)
{
	return true;
	var s = '?' + id + '&template=' + tpl + '&type=js&lang=' + lang;
	var url = '/data/getTextAfisha/' + s;
	
	var myAjax = new Ajax(url, {method: 'get', charset: 'utf-8', update: $('text')});
	var q = myAjax.request();
}

/*
*  выбираем площадки и тип спектакля
*/
function select_afisha(qs)
{
	var QSC = parse_qs(qs);//парсим строку запроса
	var tr = new Array();
	var links = new Array();
	
	if(QSC.where == 'theatre') $('top_img').setStyle('background-image', 'url(' + pic_array[0].src +')');
	if(QSC.where == 'hall') $('top_img').setStyle('background-image', 'url(' + pic_array[1].src +')');
	if(QSC.where == 'all') $('top_img').setStyle('background-image', 'url(' + pic_array[2].src +')');

	//меняем стили у активных элементов
	if('where' in QSC)
	{
		links = $$('tr#select_where a');
		for(i=0;i<links.length;i++)
		{
			set_passive_style(links[i]);
		}
		var oid = $('where_' + QSC.where);
		set_active_style(oid);
		
		
	}
	
	if('what' in QSC)
	{
		links = $$('tr#select_what a');
		for(i=0;i<links.length;i++)
		{
			set_passive_style(links[i]);
		}
		var oid = $('what_' + QSC.what);
		set_active_style(oid);
	}
	
	tr = $('afisha').getElements('tr');//массив всех строк таблицы
	
	for(i=0;i<tr.length;i++)
	{
		if(tr[i].className != 'static') tr[i].style.display = 'none';//потому что урод ИЕ не понимает visibility: collapse (((((
	}
	
	if(('where' in QSC) && QSC.where != 'all') tr = tr.filterByClass('c_' + QSC.where);
	if(('what' in QSC) && QSC.what != 'all') tr = tr.filterByClass('c_' + QSC.what);
	
	for(i=0;i<tr.length;i++)
	{
		tr[i].style.display = '';//лучшие собаководы рекомендуют делать так, а  не 'block'
	}
}

var Query = new Object();//храним пропарсенную строку запроса и не переписываем его больше чтобы добавлять значения

function parse_qs(qs)
{
	var c = new Array();
	c = qs.split("&");
	c = c[0].split("=");
	Query[c[0]] = c[1];
	return Query;
}
//просто смена стилей. setStyles({...}) почему-то не заработала, а разбираться времени не было. потом переделать
function set_active_style(elem)
{
	elem.style.fontWeight = 'bold'; elem.style.fontSize = '12px';
	elem.style.cursor = 'default'; elem.style.border = 'none';
}

function set_passive_style(elem)
{
	elem.style.fontWeight = 'normal'; elem.style.fontSize = '11px';
	elem.style.cursor = 'pointer'; elem.style.borderBottomWidth = '1px';
	elem.style.borderBottomStyle = 'dotted';
}

/*
*  конец выбора
*/

/*
* всплывающая картинка
*/
/* 
*****  возвращает путь к файлу и имя файла  ****
dir_name - путь от корня до файла не включая его
file_name - полное имя файла
ext - расширение с точкой
остальные для формата   имя_файла_нечто_состояние_язык.расширение
lang - язык
 state - состояние 
name - все что до двух предыдущих
*/
var File = new Class({

	initialize: function (path)
	{
		this.path = path; 
		this.dir_name='/';
		this.string_array=this.path.split('/');
		for(i=3;i<this.string_array.length-1;i++)
		{
			this.dir_name = this.dir_name + this.string_array[i] + '/';
		}
		this.file_name = this.string_array[this.string_array.length -1];
	
		//парсим имя файла
		this.tmp = new Array();
		this.tmp = this.file_name.split('.');//расширение по точке
		this.ext = '.' + this.tmp[1];
		this.tmp2 = new Array();
		this.tmp2 = this.tmp[0].split('_');//  _ - разделитель
		this.lang = '_' + this.tmp2[this.tmp2.length - 1];
		this.state = '_' + this.tmp2[this.tmp2.length - 2];
		this.name = this.tmp2[0];
		for(i=1;i<(this.tmp2.length - 2);i++)
		{
			this.name = this.name + '_' + this.tmp2[i];
		}
	}
});

var img_div;

function open_img(obj, w, h)
{
	if($('big_img')) {close_div(); return;}
	img_div = document.createElement("div");
	var src = $(obj).href;
	var img = new File(src);
	src = img.dir_name + img.file_name;

	var x, y;
	obj = $(obj).getFirst();
	var y = calcH(obj,h);
	var x = calcL(obj,w);

	$(img_div).setStyles({
		width: w,
		height: h,
		left: x + 'px',
		top: y + 'px'
	});
	
	$(img_div).setProperties({
		onclick: 'close_div()',
		id: 'big_img'
	});

	$(img_div).setHTML('<img src="' + src + '" onclick="close_div()">');
	$('all').appendChild(img_div);
}

function close_div()
{
	$('big_img').remove();
}

function calcL(obj, w)
{
	var x;
	var scrX = window.getWidth();
	var oLeft = (scrX - (0.85 * scrX)) / 2;
	oLeft = $(obj).getLeft() + oLeft;
	var oRight = oLeft + obj.offsetWidth;
	
	//определяем где больше места; пытаемся дать на 20 пх от края превьюшки; если не получается - даем 20пх от края окна
	var leftSpace = oLeft - 20;
	var rightSpace = scrX - oRight - 20;
	if(leftSpace > rightSpace)
	{
		if(leftSpace >= w) x = leftSpace - w;else x = 20;
	}
	else
	{
		if(rightSpace >= w) x = oRight + 20; else x = scrX - 20 - w;
	}
	return x;
}

function calcH(obj,h)
{
	var y;
	var oTop = $(obj).getTop();
	var scrTop = window.getScrollTop() + 20;
	var scrY = window.getHeight();
	if(scrY < h) {y = scrTop; return y;}
	y = oTop - 20;
	for(i=y;i>scrTop;i--)
	{
		if((i + h) < (scrTop + scrY - 40)) break;
	}
	return i;
}

/* *****
* изменения в афише 
*/
function getChange(elem, id)
{
	var w = $('right').getCoordinates().width;

	$('change_container').setStyles({
		width: w,
		display: 'block'
	});
}
/* *****
* прошлые месяцы
*/
function select_past(elem, url, lang)
{
	url = url + '&lang=' + lang;
	var myAjax = new Ajax(url, {
									method: 'get', 
									charset: 'utf-8', 
									update: $('past_perfomance_content'),
									onComplete: function(){show_past_month_list(elem)}
								});
	var q = myAjax.request();
}

function show_past_month_list(elem)
{
	var state = $('past_perfomance').getStyle('display');
	if(state == 'none') var state2 = 'block';
	if(state == 'block') var state2 = 'none';
	
		var w = $(elem).getCoordinates();
		var all = $('all').getCoordinates();
		
		var left = (window.getWidth() * 0.06) + w.left;
		if(window.ie) left = w.left - all.left;
		var top = w.top + 20;
		var width = 200;
	
	//сворачиваем
		var years = $$('#past_perfomance_content ul.past_year');
		for(i=0; i < years.length; i++)
		{
			years[i].style.display = 'none';
		}	
	
	$('past_perfomance').setStyles({
		width: width,
		top: top,
		left: left,
		display: state2
	});
	

}

function past_year_change_state(elem)
{
	
	var years = $$('#past_perfomance_content ul.past_months');
		for(i=0; i < years.length; i++)
		{
			years[i].style.display = 'none';
		}	
	
	elem = $(elem).getNext();
	var state = $(elem).getStyle('display');

	if(state == 'none') var state2 = 'block';
	if(state == 'block') var state2 = 'none';
	$(elem).setStyle('display', state2);
}

function getRounded(elem)
{
	while(($(elem).className != 'rounded') || ($(elem).tagName != 'body'))
	{
		elem = $(elem).getParent();
		if($(elem).className == 'rounded') 
		{
			$(elem).getParent().setStyle('display','none');
			return;
		}
		
	}
	
}

/* *****
*  для перехода в афишу с календаря. если js включен, дописываем признак from в конец строки запрос
*/
function addPlacement()
{
	var placement =  $$('#placement a');

	for(i=0;i<placement.length;i++)
	{
		var href = $(placement[i]).getProperty('href');
		href = href + '&from=true';
		$(placement[i]).setProperty("href", href);
		
	}
}

