var webroot = '';

var photos_in_albums = new Array();

var center_of_the_screen = new Object;
var mouse_pos = new Object;
var scroll_timer;

var mouse_distance = 0;
var max_distance = 0;
var old_mouse_distance = 0;
var prawo = false;

var old_mouse_x = 0;

//po najechaniu na raczke jedziemy orche do przodu/do tylu
var hand_mouseovered = false;

//uchwyty do waznych czesci dworca
var bg_handle;
var peron_handle;
var lamps_handle;
var left_board_handle;
var right_board_handle;
var suitcases_handle;
var left_board_hover_handle;
var right_board_hover_handle;

var background_position = 0;

var suitcases_count = 0;
var suitcase_places = 0;

function set_scroll_position(pos)
{	
	bg_handle.style.backgroundPosition = (pos/2) + "px 0px";
	peron_handle.style.backgroundPosition = (pos) + "px 470px";
	lamps_handle.style.backgroundPosition = (pos) + "px 5%";
	
	left_board_handle.style.backgroundPosition = ( (pos) + 460) + "px 160px";
	left_board_hover_handle.style.backgroundPosition = ( (pos) + 460) + "px 160px";
	
	right_board_handle.style.backgroundPosition = ( (pos) + max_distance - (-468) - 318) + "px 160px";
	right_board_hover_handle.style.backgroundPosition = ( (pos) + max_distance - (-468) - 318) + "px 160px";
	
	suitcases_handle.scrollLeft = -(pos);
}

function init() {

	$('loading_overlay').fade();
	
	//lapiemy uchwyty
	bg_handle = $('bg');
	peron_handle = $('peron');
	lamps_handle = $('lamps');
	left_board_handle = $('left_board');
	left_board_hover_handle = $('left_board_hover');
	right_board_handle = $('right_board');
	right_board_hover_handle = $('right_board_hover');
	suitcases_handle = $('peron_scroll');
	
	//sprawdzmy czy jestesmy na iphonie/ipadzie
	if ( (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) ) 
	{ 
		alert("iphone!");
	}
	
	//console.log("init");
  		//if (document.cookie.indexOf("iphone_redirect=false") == -1) 

	Event.observe(document, 'mousemove', get_coords);
	
	//jak zmieniamy wielkosc okna tot rzeba policzyc od nowa kilka rzeczy :p
	window.onresize = function() {
       on_resize();
    };

	
	var main_viewport_pos = $('main_viewport').positionedOffset();
	
	center_of_the_screen.x = parseInt(main_viewport_pos.left - (-($('window').getWidth()/2)));
	center_of_the_screen.y = parseInt(main_viewport_pos.top - (-($('window').getHeight()/2)));
	
	//liczymy ilosc wszystkich walizek
	suitcase_count = $$('.suitcase_label').length;
	
	suitcase_places = Math.ceil(suitcase_count / 2);
	
	max_distance = ((suitcase_places - (-2)) * 638) - (319);//($('peron').getWidth() - $('peron_scroll').getWidth());
	$('suitcases').style.width = max_distance*2 + 'px';
	
	background_position = -65;
	
	setInterval('scroll()', 50);
	//new Draggable('slider', { constraint: 'vertical', starteffect: false, endeffect: false, scrollSensitivity: 50 });
	
	//initial scroll
	//$('bg_scroll').scrollLeft = $('bg_scroll').scrollLeft - (-65);
	//$('peron_scroll').scrollLeft = $('peron_scroll').scrollLeft - (-(65*2));
	//$('label').setOpacity(0.07);
	//set_scroll_position(-200);
	

}

function right_hand_over()
{
	//console.log("url("+webroot+"img/tablica_left_hover3.png);");
	$('left_board_hover').style.backgroundImage = 'url('+webroot+'img/tablica_left_hover3.png)';
													  //'/aneikon_new/img/tablica_left_hover3.png'
	$('left_board_hover').style.display = 'block';
	
	if (!hand_mouseovered)
	{
		//mouse_distance = 2;
		hand_mouseovered = true;
		scroll_right_hand(0);
	}
}

function right_hand_out()
{
	$('left_board_hover').style.display = 'none';
	$('left_board_hover').style.backgroundImage = 'url('+webroot+'img/tablica_left_hover2.png)';
}

function scroll_right_hand(iteration)
{
	if (iteration < 40)
	{
		background_position = background_position - ((40 - iteration)/1.3);
		//mouse_distance = mouse_distance - 1;
		set_scroll_position(background_position*2);
		iteration++;
		setTimeout("scroll_right_hand("+(iteration-(-1))+");", 50);
	}
	else
	{
		hand_mouseovered = false;
	}
}

function left_hand_over()
{
	$('right_board_hover').style.backgroundImage = 'url('+webroot+'img/tablica_right_hover3.png)';
	$('right_board_hover').style.display = 'block';
	
	if (!hand_mouseovered)
	{
		//mouse_distance = 2;
		hand_mouseovered = true;
		scroll_left_hand(0);
	}
}

function left_hand_out()
{
	$('right_board_hover').style.display = 'none';
	$('right_board_hover').style.backgroundImage = 'url('+webroot+'img/tablica_right_hover2.png)';
}

function scroll_left_hand(iteration)
{
	if (iteration < 40)
	{
		background_position = background_position + ((40 - iteration)/1.3);
		//mouse_distance = mouse_distance - 1;
		set_scroll_position(background_position*2);
		iteration++;
		setTimeout("scroll_left_hand("+(iteration-(-1))+");", 50);
	}
	else
	{
		hand_mouseovered = false;
	}
}

function get_coords(e) {
	if (!hand_mouseovered)
	{
		mouse_pos.x = Event.pointerX(e);
		mouse_pos.y = Event.pointerY(e);
		
		mouse_distance = parseInt((mouse_pos.x - center_of_the_screen.x)/50);
	}
}

function on_resize() {
	clearTimeout(scroll_timer);
	
	var main_viewport_pos = $('main_viewport').positionedOffset();
	
	center_of_the_screen.x = parseInt(main_viewport_pos.left - (-($('window').getWidth()/2)));
	center_of_the_screen.y = parseInt(main_viewport_pos.top - (-($('window').getHeight()/2)));
	
	//init();
}

//stany walizek etc.
var suitcase_opened = false;

function scroll() {

	if ((!suitcase_opened) && (!slider_down) && (!scrolling_to_suitcase) && (!slider_flying) && (!hand_mouseovered))
	{
		//$('debug').innerHTML = ($('peron').getWidth() - $('peron_scroll').getWidth()) + ' --- ' + prawo;

		//bg_handle.scrollLeft = bg_handle.scrollLeft - (-10);
		//peron_handle.scrollLeft = peron_handle.scrollLeft - (-(10));
		
		//bg_handle.style.backgroundPosition = (scroll_temp) + "px 0";
		//peron_handle.style.backgroundPosition = (scroll_temp) + "px 97%";
		
		//scroll_temp++;
		
		//przesuwamy w prawo
		if (mouse_distance > 0)
		{
			if (-(background_position*2) < max_distance)
			{
				background_position = background_position - (mouse_distance);
				//bg_handle.scrollLeft = bg_handle.scrollLeft - (-mouse_distance);
				//peron_handle.scrollLeft = peron_handle.scrollLeft - (-(mouse_distance*2));
				
			}
		}
		else //w lewo
		{
			//if ($('peron_scroll').scrollLeft < max_distance)
			if (-background_position > 0)
			{
				background_position = background_position - (mouse_distance);
				//bg_handle.scrollLeft = bg_handle.scrollLeft - (-mouse_distance);
				//peron_handle.scrollLeft = peron_handle.scrollLeft - (-(mouse_distance*2));
			}
		}
		
		/*bg_handle.style.backgroundPosition = (background_position) + "px 0px";
		peron_handle.style.backgroundPosition = (background_position*2) + "px 470px";
		lamps_handle.style.backgroundPosition = (background_position*2) + "px 5%";
		
		left_board_handle.style.backgroundPosition = ( (background_position*2) + 460) + "px 160px";
		right_board_handle.style.backgroundPosition = ( (background_position*2) + max_distance - (-468) - 318) + "px 160px";
		
		suitcases_handle.scrollLeft = -(background_position*2);*/
		
		set_scroll_position(background_position*2);
		
		//board_handle.scrollLeft = -(background_position*2);
	}

	//aktualizacja co chwile
	//scroll_timer = setTimeout('scroll()', 50);
}

//var expanding_element = false;
var elements_to_expand = new Array();
var element_is_expanding = new Array();
var expansion_timeout = false;

var photos = new Array();

var photos_handles = new Array();
var photos_pos = new Array();

var opened_suitcase_handle = false;
var opened_suitcase_pos = new Object();

var photo_opened = false;

var actual_page = 0;
var max_per_page = 15;
var max_page = 0;

function expand_element(expanding_id) {
	
	//if (element.style.width.replace(/px,*\)*/g,"") == 128) {
	//	expanding_element = $(element.id);
	//}
	
	//if (elements_to_expand[expanding_id] == 0) { return; }
	
	var expanding_element = $(expanding_id);
	
	if ((expanding_element) && (expanding_element.style.width.replace(/px,*\)*/g,"") < 148)) {
	
		element_is_expanding[expanding_id] = true;
	
		expanding_element.style.width = ((expanding_element.style.width.replace(/px,*\)*/g,"")) - (-2)) + 'px';
		expanding_element.style.left = ((expanding_element.style.left.replace(/px,*\)*/g,"")) - (1)) + 'px';
		
		expanding_element.style.height = ((expanding_element.style.height.replace(/px,*\)*/g,"")) - (-2)) + 'px';
		expanding_element.style.top = ((expanding_element.style.top.replace(/px,*\)*/g,"")) - (1)) + 'px';
		
		if ( (expanding_element.style.width.replace(/px,*\)*/g,"")) < 148) {
			setTimeout('expand_element(\''+expanding_id+'\')', 5);
		}
		else {
			//expanding_element = false;
			//elements_to_expand[expanding_id] = 0;
			element_is_expanding[expanding_id] = false;
		}
	}
}

function contract_element(expanding_id) {
	
	//if (element.style.width.replace(/px,*\)*/g,"") == 148) {
	//	expanding_element = $(element.id);
	//}
	
	//if (elements_to_expand[expanding_id] == 0) { return; }
	
	var expanding_element = $(expanding_id);
	
	if ((expanding_element) && (expanding_element.style.width.replace(/px,*\)*/g,"") > 128)) {
	
		element_is_expanding[expanding_id] = true;
	
		expanding_element.style.width = ((expanding_element.style.width.replace(/px,*\)*/g,"")) - (2)) + 'px';
		expanding_element.style.left = ((expanding_element.style.left.replace(/px,*\)*/g,"")) - (-1)) + 'px';
		
		expanding_element.style.height = ((expanding_element.style.height.replace(/px,*\)*/g,"")) - (2)) + 'px';
		expanding_element.style.top = ((expanding_element.style.top.replace(/px,*\)*/g,"")) - (-1)) + 'px';
		
		if ( (expanding_element.style.width.replace(/px,*\)*/g,"")) > 128) {
			setTimeout('contract_element(\''+expanding_id+'\')', 5);
		}
		else {
			//expanding_element = false;
			//elements_to_expand[expanding_id] = 0;
			element_is_expanding[expanding_id] = false;
		}
	}
}

function control_expansion() {

	if (!photo_opened) {

		for (var i = 0 ; i < photos.length ; i++) {
			if (elements_to_expand['thumbnail_'+i] == 2) {
				//alert('yo');
				if (!element_is_expanding['thumbnail_'+i])
				{
					new Effect.Opacity('thumbnail_'+i, { from: 0.6, to: 1.0, duration: 0.7 });
					expand_element('thumbnail_'+i);
					elements_to_expand['thumbnail_'+i] = 0;
				}
			}
			else if (elements_to_expand['thumbnail_'+i] == 1)
			{
				if (!element_is_expanding['thumbnail_'+i])
				{
					//if ($('thumbnail_'+i).getStyle('opacity') == 1) {
						new Effect.Opacity('thumbnail_'+i, { from: 1.0, to: 0.6, duration: 0.7 });
					//}
					contract_element('thumbnail_'+i);
					elements_to_expand['thumbnail_'+i] = 0;
				}
			}
		}
	
	}
	
	expansion_timeout = setTimeout('control_expansion()', 500);
}


function switch_suitcase(suitcase) {
	
	if (suitcase_opened) { return; }
	if (slider_flying) { return; }
	if (scrolling_to_suitcase) { return; }
	
	if (suitcase.className == "closed") {
	
		//resetujemy wszystkie zmienne
		elements_to_expand = new Array();
		element_is_expanding = new Array();
		expansion_timeout = false;
		
		actual_page = 0;

		//photos = new Array();

		photos_handles = new Array();
		photos_pos = new Array();

		opened_suitcase_handle = false;
		opened_suitcase_pos = new Object();
		//koniec resetowania zmiennych
	
		photos = new Array();
	
		var suitcase_id = parseInt(suitcase.id.substr(9, suitcase.id.length));
		
		//alert(suitcase_id);
	
		for (var i = 0 ; i < photos_in_albums[suitcase_id].length ; i++) 
		{ 
			photos[i] = new Object(); 
			photos[i].id = i;
			photos[i].thumb = photos_in_albums[suitcase_id][i];
			photos[i].big = photos_in_albums[suitcase_id][i].replace('_thumb', '');
			//preload duzych obrazkow (to pozera abrdzo mocno proca wiec narazie wywalamy)
			//photos[i].big_preload = new Image();
			//photos[i].big_preload.onload = function () { console.log("zaladowalem focie!"); } 
			//photos[i].big_preload.src = photos[i].big;
		}
	
		max_page = Math.ceil(photos.length/max_per_page);
	
		suitcase.src = $('suitcase_opened').src;
		suitcase.className = "opened";
		
		opened_suitcase_handle = suitcase;
		
		suitcase_opened = true;
		
		$('photos_overlay').setOpacity(0);
		new Effect.Opacity('photos_overlay', { from: 0.0, to: 0.6, duration: 2.0 });
		$('photos_overlay').show();
		$('images_window').show();
		
		//wyliczmy sobie pozycje walizki
		var suitcase_pos = new Object();
		var suitcase_offset = $(suitcase.id).positionedOffset(); //tu sie wyjebuje w ie, trzeba sie bedzie tym zajac ;|
		
		suitcase_pos.x = ( (suitcase_offset.left) - ($('peron_scroll').scrollLeft) );// - (-$('peron_scroll').cumulativeOffset().left) );
		suitcase_pos.y = ( (suitcase_offset.top) );//- (-$('peron_scroll').cumulativeOffset().top) );
		
		opened_suitcase_pos = suitcase_pos;
		
		//ustawiamy overlay na walize zeby z niej mogly sie zdjecia wysypywac
		
		if (document.getElementById('suitcase_overlay')) { $('suitcase_overlay').remove(); }

		var suitcase_overlay = document.createElement('img');
		suitcase_overlay.style.zIndex = '1600';
		suitcase_overlay.style.left = (suitcase_pos.x) + 'px';
		suitcase_overlay.style.top = (suitcase_pos.y) + 'px';
		suitcase_overlay.style.position = 'absolute';
		suitcase_overlay.setAttribute('id', 'suitcase_overlay');
		suitcase_overlay.width = $('suitcase_over').getWidth();
		suitcase_overlay.height = $('suitcase_over').getHeight();
		suitcase_overlay.src = $('suitcase_over').src;
		$('images_window').appendChild(suitcase_overlay);
		
		////////////////////////////////////////////////////////////////////////
		//tworzymy elementy nawigacji
		var close_button = document.createElement('div');
		close_button.setAttribute('id', 'close_button');
		close_button.style.display = 'none';
		$('images_window').appendChild(close_button);
		$('close_button').setOpacity(0);
		new Effect.Opacity('close_button', {from: 0.0, to: 0.5});
		$('close_button').show();
		close_button.onclick = function () { close_photos(); }
		
		var next_button = document.createElement('div');
		next_button.setAttribute('id', 'next_button');
		next_button.style.display = 'none';
		$('images_window').appendChild(next_button);
		$('next_button').setOpacity(0);
		new Effect.Opacity('next_button', {from: 0.0, to: 0.5});
		$('next_button').show();
		next_button.onclick = function () { next_page(); }
		
		var previous_button = document.createElement('div');
		previous_button.setAttribute('id', 'previous_button');
		previous_button.style.display = 'none';
		$('images_window').appendChild(previous_button);
		$('previous_button').setOpacity(0);
		new Effect.Opacity('previous_button', {from: 0.0, to: 0.5});
		$('previous_button').show();
		previous_button.onclick = function () { previous_page(); }
		
		var info_button = document.createElement('div');
		info_button.setAttribute('id', 'info_button');
		info_button.style.display = 'none';
		$('images_window').appendChild(info_button);
		$('info_button').setOpacity(0);
		new Effect.Opacity('info_button', {from: 0.0, to: 0.5});
		$('info_button').show();
		info_button.onclick = function () { close_photos(); }
		
		info_button.innerHTML = "1/"+max_page;
		
		////////////////////////////////////////////////////////////////////////
		
		var iteration = 0;
		var y = 0;
		var x = 0;
		
		for (var i = 0 ; i < photos.length ; i++)
		{
			photos_handles[i] = document.createElement('img');
			photos_handles[i].style.zIndex = '1500';
			photos_handles[i].style.left = (suitcase_pos.x - (-80)) + 'px';
			photos_handles[i].style.top = (suitcase_pos.y - (-40)) + 'px';
			photos_handles[i].style.width = '20px'; 
			photos_handles[i].style.height = '20px';
			photos_handles[i].style.position = 'absolute';
			//photos_handles[i].style.visibility = 'hidden';
			photos_handles[i].setAttribute('id', 'thumbnail_'+i);
			photos_handles[i].className = 'thumbnail';
			
			$('images_window').appendChild(photos_handles[i]);
			
			//ustalamy pozycje zdjecia
			photos_pos['thumbnail_'+i] = new Object();
			photos_pos['thumbnail_'+i].x = (x*190);
			photos_pos['thumbnail_'+i].y = (y*190);
			
			elements_to_expand['thumbnail_'+i] = 0;
			
			photos_handles[i].onclick = show_photo;
			
			iteration++;
			x++
			if (x == 5) { y++; x = 0; }
			if (y == 3) { y=0; }
			
			if (iteration < 16) {
			
				photos_handles[i].style.visibility = 'visible';
				
				//najpierw onload, potem src
				photos_handles[i].onload = function () {
					//najpierw musi podleciec troche do gory
					//var randomnumber= 
					$(this.id).show();
					new Effect.Opacity(this.id, { from: 1.0, to: 0.6, duration: 0.5 });
					this.morph('top: '+(suitcase_pos.y - 200 -Math.floor(Math.random()*50))+'px; left: '+(suitcase_pos.x - (-50)-Math.floor(Math.random()*50))+'px; width: 64px; height: 64px; border: 5px solid white;',
					{ duration: (Math.random()*2), afterFinish : function (effect) {
						//po tym, jak sie juz zdjecie wysunelo
						effect.element.style.zIndex = '3000';
						effect.element.morph('top: '+(photos_pos[effect.element.id].y - (-112))+'px; left: '+(photos_pos[effect.element.id].x - (-47))+'px; width: 128px; height: 128px; border: 10px solid white;');
						
						//alert('dupa');
						//effect.element.opacity({ from: 1.0, to: 0.7 });
						

					} });
				}
			}
			else
			{
				//inne foty ustawiamy normalnie
				photos_handles[i].onload = function () {

					//$(this.id).hide();
					var this_handle = document.getElementById(this.id);
					
					$(this_handle.id).fade( {duration: 0.1, afterFinish : function (effect) {
					
						effect.element.setOpacity(0.6);
					
						effect.element.style.zIndex = '3000';
						effect.element.style.top = (photos_pos[effect.element.id].y - (-112))+'px';
						effect.element.style.left = (photos_pos[effect.element.id].x - (-47))+'px';
						effect.element.style.width = '128px';
						effect.element.style.height = '128px';
						effect.element.style.borderWidth = '10px';
						effect.element.style.borderStyle = 'solid';
						effect.element.style.borderColor = 'white';//: 128px; height: 128px; border: 10px solid white;');*/
					
					} } );
					
					/*$(this_handle.id).setOpacity(0.6);
					
					this_handle.style.zIndex = 3000;
					this_handle.style.top = (photos_pos[this.id].y - (-112))+'px';
					this_handle.style.left = (photos_pos[this.id].x - (-47))+'px';
					this_handle.style.width = '128px';
					this_handle.style.height = '128px';
					this_handle.style.borderWidth = '10px';
					this_handle.style.borderStyle = 'solid';
					this_handle.style.borderColor = 'white';//: 128px; height: 128px; border: 10px solid white;');*/
					
					//
				}
			}
			
			photos_handles[i].onmouseover = function () {
				//expand_element(this);
				elements_to_expand[this.id] = 2;
			}
			
			photos_handles[i].onmouseout = function () {
				//contract_element(this);
				elements_to_expand[this.id] = 1;
			}
			
			expansion_timeout = control_expansion();
			
			photos_handles[i].src = photos[i].thumb;
			
			$(photos_handles[i].id).show();
		}
		
		//temp.show();
		
		//alert(suitcase_pos.x);
		

		
	} else {
		suitcase.src = "img/suitcase_closed.png";
		suitcase.className = "closed";
	}
	
	
}

//zamyka focie
function close_photos() {

	//nie pozwalamy zamknac zdjec jak jeno zdjecie jest powiekszone
	if (photo_opened) { return; }
	
	//usuwamy elementy nawigacji
	$('close_button').fade( { afterFinish: function (effect) { effect.element.remove(); } } );
	$('previous_button').fade( { afterFinish: function (effect) { effect.element.remove(); } } );
	$('next_button').fade( { afterFinish: function (effect) { effect.element.remove(); } } );
	$('info_button').fade( { afterFinish: function (effect) { effect.element.remove(); } } );
	
	clearTimeout(expansion_timeout);
	
	for (var i = 0 ; i < photos.length ; i++) {
		//photos_handles[i].style.zIndex = '1500';
		
		if (photos_handles[i].style.display != 'none')
		{
			photos_handles[i].morph('top: '+(opened_suitcase_pos.y - 200 -Math.floor(Math.random()*50))+'px; left: '+(opened_suitcase_pos.x - (-50)-Math.floor(Math.random()*50))+'px; width: 64px; height: 64px; border: 5px solid white;',
			{ duration: (Math.random()), afterFinish : function (effect) {
				//po tym, jak sie juz zdjecie wysunelo
				effect.element.style.zIndex = '1500';
				effect.element.morph('top: '+(opened_suitcase_pos.y - (-40))+'px; left: '+(opened_suitcase_pos.x - (-80))+'px; width: 10px; height: 10px;', { duration: (Math.random()), 
					afterFinish: function (effect) { effect.element.remove(); } });
			} });
		}
		else
		{
			photos_handles[i].remove();
		}
		
		//photos_handles[i].
		
		//setTimeout('document.getElementById(\'main_window\').removeChild(\'thumbnail_'+i+'\');', 4000);
		
	}
	
	//jakt o wszystko bedzie dzialac za pierwszym razem to znaczy ze muza ktora teraz leci jest przezajebista :D
	$('photos_overlay').fade({ duration: 2.0, afterFinish: function () { 
		$('images_window').hide(); opened_suitcase_handle.className = "closed"; opened_suitcase_handle.src = $('suitcase_closed').src; setTimeout('suitcase_opened = false', 1000); if (document.getElementById('suitcase_overlay')) { $('suitcase_overlay').remove(); } 
	} });	
	
}

var page_switching = false;

function next_page()
{
	if (page_switching) { return; }
	if (photo_opened_id > -1) { return; }
	
	if ((actual_page + 1) < max_page)
	{
		page_switching = true;
		actual_page++;
		$('info_button').innerHTML = (actual_page - (-1))+"/"+max_page;
		
		switch_page();
	}
	
}

function previous_page()
{
	if (page_switching) { return; }
	if (photo_opened_id > -1) { return; }
	
	if ((actual_page - 1) > -1)
	{
		page_switching = true;
		actual_page--;
		$('info_button').innerHTML = (actual_page - (-1))+"/"+max_page;
		
		switch_page();
	}
	
}

//przerzucanie stron
function switch_page()
{	
	//puff zdjecia!
	for (var i = 0 ; i < photos_handles.length ; i++)
	{
		if (photos_handles[i].style.display != 'none')
		{
			photos_handles[i].puff( { duration: Math.random() } );
		}
	}
	
	//pokazujemy nowa strone!
	for (var i = (actual_page * max_per_page) ; i < ((actual_page - (-1)) * max_per_page) ; i++)
	{
		if (i < photos_handles.length)
		{
			$(photos_handles[i].id).setOpacity(0);
			$(photos_handles[i].id).show();
			//$(photos_handles[i].id).style.zIndex = 3000;
			
			new Effect.Opacity(photos_handles[i].id, { from: 0, to: 0.6, duration: Math.random() });
		}
	}
	
	setTimeout('page_switching = false;', 1000);
}

//sprawdza czy fotka o danym id jest na odpowiedniej stronie
function correct_page(id)
{
	var number_id = parseInt(id.replace("thumbnail_", ""));// - (-1);
	
	if ( (number_id >= (actual_page * max_per_page)) && (number_id < ((actual_page -(-1)) * max_per_page)) ) { return true; }
	
	return false;
	
	/*
	if ( ($('thumbnail_'+(number_id-(-1)))) && ($('thumbnail_'+(number_id-1))) )
	{
		//console.log("obaj sasiedzi istnieja");
		//jezlei obaj sasiedzi sa neiwidoczni to to tez powinno byc niewidoczne : <
		if ( ($('thumbnail_'+(number_id-(-1))).style.display == 'none') && ($('thumbnail_'+(number_id-(1))).style.display == 'none') )
		{
			return false;
		}
	}
	else if ($('thumbnail_'+(number_id-(-1))))
	{
		//console.log("prawy sasiad istnieje");
		if ( $('thumbnail_'+(number_id-(-1))).style.display == 'none' ) { return false; }
	}
	else if ($('thumbnail_'+(number_id-1)))
	{
		//console.log("lewsy sasiad istnieje");
		if ( $('thumbnail_'+(number_id-1)).style.display == 'none' ) { return false; }
	}
	else
	{
		return false;
	}
	
	return true;
	*/
}

///////////////////////////////////////////////////////////////////////////////////////
//do pokazywania zdjecia yoo

var thumbnail_position = new Object();
//var thumbnail_src = new Object();
var photo_opened_id = -1;
var photo_previously_opened_id = -1;
var preload_image;
//var mouse_on_nav = false;

//blokowanie rpzerzucania zdjec strzaleczkami
var swaping_photos_blocked = false;

function show_photo(quick_mode)
{
	var id_to_open = photo_opened_id;
	
	quick_mode = typeof(quick_mode) != 'undefined' ? quick_mode : false;
			
	if (photo_opened) {
		
		//na dzien dobry zajebujemy onkliki i onloady
		$('thumbnail_'+id_to_open).onload = function () { };
		$('thumbnail_'+id_to_open).onclick = function () { };
			
		if (this.id) { return; } //won bo juz nie chcemy callowac tej funckji z jakeigos obrazka
		//var element_id = this.id.substr(10, this.id.length);
		//if (element_id != photo_opened_id) { return; } //won
		
		if (element_is_expanding['thumbnail_'+element_id]) {
			setTimeout('show_photo(false)', 100);
		}
		else
		{
			//tu juz mamy pewnosc ze obiekt ma prawidlowo wielkosc i wszystko
			thumbnail_position = ($('thumbnail_'+id_to_open).positionedOffset());
			
			if (quick_mode)
			{
				//robimy preloader na obrazku
				var preloader = document.createElement('div');
				preloader.setAttribute('id', 'preloader');
				preloader.style.left = $('thumbnail_'+photo_previously_opened_id).style.left;
				preloader.style.top = $('thumbnail_'+photo_previously_opened_id).style.top;
				preloader.style.width = $('thumbnail_'+photo_previously_opened_id).getWidth() + "px";
				preloader.style.height = $('thumbnail_'+photo_previously_opened_id).getHeight() + "px";
				preloader.style.borderWidth = $('thumbnail_'+id_to_open).style.borderWidth;
				preloader.style.zIndex = 6000;
				//preloader.hide();
				
				$('images_window').appendChild(preloader);
			}
			else
			{
				//robimy preloader na obrazku
				var preloader = document.createElement('div');
				preloader.setAttribute('id', 'preloader');
				preloader.style.left = $('thumbnail_'+id_to_open).style.left;
				preloader.style.top = $('thumbnail_'+id_to_open).style.top;
				preloader.style.width = $('thumbnail_'+id_to_open).style.width;
				preloader.style.height = $('thumbnail_'+id_to_open).style.height;
				preloader.style.borderWidth = $('thumbnail_'+id_to_open).style.borderWidth;
				//preloader.hide();
				
				$('images_window').appendChild(preloader);
			}
			
			new Effect.Opacity('preloader', { from: 0.0, to: 0.5, duration: 0.5 });
			
			//teraz czas faktycznie zaladowac obrazek!
			preload_image = new Image();
			
			preload_image.onload = function () {
			
				//usuwamy preloader
				$('preloader').remove();
				//$('preloader').fade({ afterFinish: function(effect) { effect.element.remove(); } });
				
				var image_dimensions = new Object();
				image_dimensions.width = preload_image.width;
				image_dimensions.height = preload_image.height;
				
				var image_position = new Object();
				image_position.x = Math.round(($('main_viewport').getWidth() - image_dimensions.width) / 2) - 15;
				image_position.y = Math.round(($('main_viewport').getHeight() - image_dimensions.height) / 2) - 20;
				
				$('thumbnail_'+id_to_open).style.zIndex = 5100;
				
				if (quick_mode)
				{
					//foto sie zaladowalo wiec mozemy zamknac poprzednie foto
					var save_id = photo_opened_id;
					photo_opened_id = photo_previously_opened_id;
					close_photo(true);
					photo_opened_id = save_id;
				}
				//else
				{
					$('thumbnail_'+id_to_open).morph('border-width: 17px; top: '+image_position.y+'px; left: '+image_position.x+'px; width: '+image_dimensions.width+'px; height: '+image_dimensions.height+'px;', 
						{ afterFinish: function () { 
						
							swaping_photos_blocked = false;
						
							$('thumbnail_'+id_to_open).setOpacity(1); 
							$('thumbnail_'+id_to_open).onclick = function () { close_photo(false); };
							
							//pokazujemy interfejs do przelaczania sie miedzy kolejnymi zdjeciami
							if ( ((id_to_open-(-1)) < photos.length) && !($('next_photo_button')) )
							{
								var next_photo_button = document.createElement('div');
								next_photo_button.setAttribute('id', 'next_photo_button');
								next_photo_button.onmouseover = function () { this.style.left = '1002px'; this.setOpacity(1.0); }
								next_photo_button.onmouseout = function () { this.style.left = '1000px'; this.setOpacity(0.5); }
								next_photo_button.onclick = next_photo;
								
								$('images_window').appendChild(next_photo_button);
								$('next_photo_button').setOpacity(0.5);
							}
							else
							{
								if (($('next_photo_button')) && ((id_to_open-(-1)) >= photos.length) ) { $('next_photo_button').remove(); }
							}
							
							if ( ((id_to_open-1) >= 0) && !($('previous_photo_button')) )
							{
								var previous_photo_button = document.createElement('div');
								previous_photo_button.setAttribute('id', 'previous_photo_button');
								previous_photo_button.onmouseover = function () { this.style.left = '-35px'; this.setOpacity(1.0); }
								previous_photo_button.onmouseout = function () { this.style.left = '-33px'; this.setOpacity(0.5); }
								previous_photo_button.onclick = previous_photo;
								
								$('images_window').appendChild(previous_photo_button);
								$('previous_photo_button').setOpacity(0.5);
							}
							else
							{
								if (($('previous_photo_button')) && ((id_to_open-1) < 0) ) { $('previous_photo_button').remove(); }
							}
								
								
							
							
						} });
				}
				
				//narazie nie
				//$('thumbnail_'+photo_opened_id).onmouseover = function () { this.setOpacity(0.8); };
				//$('thumbnail_'+photo_opened_id).onmouseout = function () { this.setOpacity(1.0); };
				
				//, { afterFinish: function() {
				
					//tutaj teraz pokazujemy nawigacie nad fotka
					//wywalamy to bo z tym wiecej roboty niz pozytku
					/*$('photo_nav').style.left = Math.round( (image_dimensions.width/2) - ($('photo_nav').getWidth()/2)) - (-image_position.x) - (-15) + 'px';
					$('photo_nav').style.top = (image_position.y- (-15)) + 'px';
					$('photo_nav').style.display = 'block';
					$('photo_nav').style.visibility = 'visible';
					
					$('thumbnail_'+photo_opened_id).onmouseover = function () {
						if ($('photo_nav').style.display == 'none') {
							
							{
								$('photo_nav').show();
							}

						}	
					}
					
					$('thumbnail_'+photo_opened_id).onmouseout = function () {
						if ($('photo_nav').style.display != 'none') {
							if (mouse_on_nav == false)
							{
								$('photo_nav').hide();
							}
						}	
					}
					
					$('photo_nav')
					
				} });*/
				
				$('thumbnail_'+id_to_open).src = this.src;
			}
			
			preload_image.src = photos[id_to_open].big;
		}
	}
	else
	{
		photo_opened = true;
		
		var element_id = this.id.substr(10, this.id.length);
		
		elements_to_expand['thumbnail_'+element_id] = 0;
		
		expand_element('thumbnail_'+element_id);
		if ($('thumbnail_'+element_id).getStyle('opacity') != 1) {
			new Effect.Opacity('thumbnail_'+element_id, { from: 0.6, to: 1.0, duration: 0.7 });
		}
		
		//przyciemniamy reszte fotek
		for (var i = 0 ; i < photos_handles.length ; i++) {
			if (photos_handles[i].style.display != 'none') {
				if (i != element_id) {
					//0.6 jest normalnie
					new Effect.Opacity('thumbnail_'+i, { from: 0.6, to: 0.1, duration: 1.0 });
				}
			}
		}
		
		photo_opened_id = element_id;
		
		setTimeout('show_photo(false)', 10);
	}
	
	//alert(element_id);
	
	//alert("dupa");
}

function close_photo(quick_mode)
{
	var id_to_close = photo_opened_id;
	
	quick_mode = typeof(quick_mode) != 'undefined' ? quick_mode : false;
	
	//wyjebac wszystkie eventy
	$('thumbnail_'+id_to_close).onclick = function () { };
	$('thumbnail_'+id_to_close).onload = function () { };
	$('thumbnail_'+id_to_close).onmouseover = function () { };
	$('thumbnail_'+id_to_close).onmouseout = function () { };
	
	//i interfejs
	if (!quick_mode)
	{
		if ($('next_photo_button')) { $('next_photo_button').remove(); }
		if ($('previous_photo_button')) { $('previous_photo_button').remove(); }
		
		//rozjasaniamy
		for (var i = 0 ; i < photos_handles.length ; i++) {
			if (photos_handles[i].style.display != 'none') {
				if (i != id_to_close) {
					//0.6 jest normalnie
					$('thumbnail_'+i).setOpacity(0.6);//('thumbnail_'+i, { from: 0.1, to: 0.6, duration: 1.0 });
					
				}
			}
		}
		
		new Effect.Opacity('thumbnail_'+id_to_close, { from: 1.0, to: 0.6 });
		elements_to_expand[('thumbnail_'+id_to_close)] = 1;
	}
	else
	{
		new Effect.Opacity('thumbnail_'+id_to_close, { from: 1.0, to: 0.1 });
		elements_to_expand[('thumbnail_'+id_to_close)] = 0;
	}
	
	//potrzebujemy odpowiednia pozycje miniaturki (taka sama jak pcozatkowa)
	var temp_top = (photos_pos['thumbnail_'+id_to_close].y - (-112))+'px';
	var temp_left = (photos_pos['thumbnail_'+id_to_close].x - (-47))+'px';
	
	elements_to_expand['thumbnail_'+id_to_close] = 0;
	
	if (quick_mode)
	{
		//jak jest quick mode czyli szybko sie cghcemy pozbyc zdjecia to robimy puff
		$('thumbnail_'+id_to_close).fade({ duration: 0.7, afterFinish: function(effect) {
				
				elements_to_expand[effect.element.id] = 0;
				effect.element.setOpacity(0.1);
					
				effect.element.style.zIndex = '3000';
				effect.element.style.top = (photos_pos['thumbnail_'+id_to_close].y - (-112))+'px';
				effect.element.style.left = (photos_pos['thumbnail_'+id_to_close].x - (-47))+'px';
				effect.element.style.width = '128px';
				effect.element.style.height = '128px';
				effect.element.style.borderWidth = '10px';
				
				if (correct_page(effect.element.id))
				{
					//$('thumbnail_'+id_to_close).appear({ from: 0.0, to: 0.6, duration: 0.1, afterFinish: function() {
						effect.element.show();
						effect.element.src = photos[id_to_close].thumb;
					
						effect.element.style.zIndex = '3000';
						
						effect.element.setOpacity(0.1);
					
						//przywracamy zdarzenia
						photos_handles[id_to_close].onclick = show_photo;
						photos_handles[id_to_close].onmouseover = function () {
							elements_to_expand[this.id] = 2;
						}
					
						photos_handles[id_to_close].onmouseout = function () {
							elements_to_expand[this.id] = 1;
						}
					//}});
				}
				
			}
		});
	}
	else
	{
		$('thumbnail_'+id_to_close).morph('border-width: 10px; top: '+temp_top+'; left: '+temp_left+'; width: '+(128)+'px; height: '+(128)+'px;',
			{ afterFinish: function (effect) { 
				$('thumbnail_'+id_to_close).src = photos[id_to_close].thumb;
				
				$('thumbnail_'+id_to_close).style.zIndex = '3000';
				
				//elements_to_expand['thumbnail_'+photo_opened_id] = 1;
				
				//przywracamy zdarzenia
				photos_handles[id_to_close].onclick = show_photo;
				photos_handles[id_to_close].onmouseover = function () {
					elements_to_expand[this.id] = 2;
				}
				
				photos_handles[id_to_close].onmouseout = function () {
					elements_to_expand[this.id] = 1;
				}
				
				
				photo_opened = false;
				photo_opened_id = -1;
				
			} });
	}
			
}

function next_photo()
{
	if (swaping_photos_blocked) { return; }
	swaping_photos_blocked = true;
	//setTimeout('swaping_photos_blocked = false', 1000);
	
	if (photo_opened)
	{
		var next_photo_id = parseInt(photo_opened_id - (-1));
		
		if (next_photo_id < (photos.length))
		{
			//jezeli fota jest na nastepnej stronie
			//console.log($('thumbnail_'+next_photo_id).style.display);
			//console.log('thumbnail_'+next_photo_id);
			
			photo_previously_opened_id = photo_opened_id;
			
			if ($('thumbnail_'+next_photo_id).style.display == 'none')
			{
				var save_id = photo_opened_id;
				photo_opened_id = -1;
				next_page();
				//console.log("mamcie!");
				photo_opened_id = save_id;
				//close_photo(true);
				photo_opened_id = next_photo_id;
				$('thumbnail_'+next_photo_id).setOpacity(1); 
				setTimeout('$("thumbnail_'+next_photo_id+'").setOpacity(1);', 1000);
				setTimeout('show_photo(true);', 500);
			}
			else
			{
				photo_opened_id = next_photo_id;
				show_photo(true);
				//$('thumbnail_'+next_photo_id).setOpacity(1); 
				//close_photo(true);
				//photo_opened_id = next_photo_id;
				$('thumbnail_'+next_photo_id).setOpacity(1); 
				//show_photo(true);
			}
		}
	}
}

function previous_photo()
{
	if (swaping_photos_blocked) { return; }
	swaping_photos_blocked = true;
	//setTimeout('swaping_photos_blocked = false', 1000);
	
	if (photo_opened)
	{
		var next_photo_id = parseInt(photo_opened_id - 1);
		
		if (next_photo_id >= 0)
		{
			//jezeli fota jest na nastepnej stronie
			//console.log($('thumbnail_'+next_photo_id).style.display);
			//console.log('thumbnail_'+next_photo_id);
			
			photo_previously_opened_id = photo_opened_id;
			
			if ($('thumbnail_'+next_photo_id).style.display == 'none')
			{
				var save_id = photo_opened_id;
				photo_opened_id = -1;
				previous_page();
				//console.log("mamcie!");
				photo_opened_id = save_id;
				//close_photo(true);
				photo_opened_id = next_photo_id;
				$('thumbnail_'+next_photo_id).setOpacity(1); 
				setTimeout('$("thumbnail_'+next_photo_id+'").setOpacity(1);', 1000);
				setTimeout('show_photo(true);', 500);
			}
			else
			{
				photo_opened_id = next_photo_id;
				show_photo(true);
				//$('thumbnail_'+next_photo_id).setOpacity(1); 
				//close_photo(true);
				//photo_opened_id = next_photo_id;
				$('thumbnail_'+next_photo_id).setOpacity(1); 
				//show_photo(true);
			}
		}
	}
}


///////////////////////////////////////////////////////////////////////////////////////
//stany slidera
var slider_down = false;
var slider_animates = false;
var slider_flying = false;

var mouse_on_scroller = false;

var scrolling_to_suitcase = false;
var scrolling_destination = 0;
var scrolling_suitcase = 0;
var scrolling_distance = 0;

function slider_onmouseover() {
	if (slider_down == false) {
		if (slider_animates == false) { slider_animates = true; $('slider').morph("top: -600px;", { duration: 0.1, afterFinish: function () { slider_animates = false; } }); /*$('slider').style.top = '-600px';*/ }
	}
}

function slider_onmouseout() {
	if (slider_down == false) {
		if (slider_animates == false) { slider_animates = true;  $('slider').morph("top: -650px;",  { duration: 0.1, afterFinish: function () { slider_animates = false; } }); /*$('slider').style.top = '-650px';*/ }
	}
}

function slider_onclick() {

	if (slider_animates == false) {
		if (slider_down == false) {
		
			if (scrolling_to_suitcase) { return; }
		
			slider_animates = true;
			slider_flying = true;
			
			$('slider').morph("top: -20px;", { afterFinish: function () { 
			
				slider_down = true;
				slider_animates = false;
			
			} } );
		} else {
		
			if (!mouse_on_scroller)
			{
				slider_animates = true;
				
				$('slider').morph("top: -650px;", { afterFinish: function () { 
				
					slider_down = false;
					slider_animates = false;
					slider_flying = false;
				
				} } );
			}
		}
	}
}

var scroll_this_timeout = false;

function scroll_to_suitcase(id)
{
	if (scrolling_to_suitcase == false)
	{
		scrolling_suitcase = id;
		scrolling_destination = $('suitcase_'+scrolling_suitcase).positionedOffset().left - 400;
		scrolling_to_suitcase = true;
		scrolling_distance = Math.abs ( (-background_position*2) - scrolling_destination );
		
		if (scrolling_distance < 150)
		{
			scrolling_to_suitcase = false;
			setTimeout('slider_flying = false;', 100);
			
			setTimeout('switch_suitcase($(\'suitcase_'+scrolling_suitcase+'\'));', 200);
		}
		else
		{
			scroll_this_timeout = setInterval('scroll_to_suitcase(-1)', 50);
		}
	}
	else
	{
		if (id != -1) { return; } //nara, nie chcemy odpalic tego jeszcze raz
		
		var acceleration = Math.sin ( (Math.abs( (-background_position*2) - scrolling_destination)/scrolling_distance ) * 3.14)/0.9;
		
		if (-background_position*2 < (scrolling_destination + 0))
		{
			//$('peron_scroll').scrollLeft = $('peron_scroll').scrollLeft + 15;
			//$('bg_scroll').scrollLeft = Math.round($('peron_scroll').scrollLeft / 2);
			background_position = background_position - (80*acceleration);
			set_scroll_position(background_position*2);
			//scroll_this_timeout = setTimeout('scroll_to_suitcase(-1)', 10);
		}
		else if (-background_position*2 > (scrolling_destination - 0))
		{
			//$('peron_scroll').scrollLeft = $('peron_scroll').scrollLeft - 15;
			//$('bg_scroll').scrollLeft = Math.round($('peron_scroll').scrollLeft / 2);
			background_position = background_position + (80*acceleration);
			set_scroll_position(background_position*2);
			//scroll_this_timeout = setTimeout('scroll_to_suitcase(-1)', 10);
		}
		
		if ( (-background_position*2 < (scrolling_destination + 50)) && (-background_position*2 > (scrolling_destination - 50)) )
		{
			clearInterval(scroll_this_timeout);
			
			scrolling_to_suitcase = false;
			slider_flying = false;
			
			switch_suitcase($('suitcase_'+scrolling_suitcase));
		}
		
		
}
	}
		
		



