var thumbsImgs = [];
// wczytuje obrazy do pamięci
(function() {var imgs = ['images/01_index/zoba_a.gif', 'images/01_index/zoba_b.gif', 'images/linki/01.gif', 'images/linki/02.gif', 'images/linki/03.gif', 'images/linki/04.gif', 'images/linki/01a.gif', 'images/linki/02a.gif', 'images/linki/03a.gif', 'images/linki/04a.gif', 'images/linki/01b.gif', 'images/linki/02b.gif', 'images/linki/03b.gif', 'images/linki/04b.gif', 'images/02_projekty_02e_bg.jpg', 'images/02_projekty_02e_bg.jpg', 'images/tiny/pk.gif', 'images/transparent.png', 'images/arrow-left.png', 'images/arrow-right.png', 'images/close.gif', 'images/01_index/znak.gif', 'images/studio_degutis.gif', 'images/dol_bg.gif', 'images/gancarz.gif', 'images/01_ab.gif', 'images/01_index/design.gif', 'images/nr/01a.gif', 'images/nr/02a.gif', 'images/nr/03a.gif', 'images/nr/04a.gif', 'images/nr/05a.gif', 'images/nr/06a.gif', 'images/nr/07a.gif', 'images/nr/08a.gif', 'images/nr/09a.gif', 'images/nr/10a.gif', 'images/nr/11a.gif', 'images/nr/12a.gif', 'images/nr/13a.gif', 'images/nr/14a.gif', 'images/nr/15a.gif', 'images/nr/16a.gif', 'images/nr/17a.gif', 'images/nr/18a.gif', 'images/nr/19a.gif', 'images/nr/20a.gif', 'images/nr/01b.gif', 'images/nr/02b.gif', 'images/nr/03b.gif', 'images/nr/04b.gif', 'images/nr/05b.gif', 'images/nr/06b.gif', 'images/nr/07b.gif', 'images/nr/08b.gif', 'images/nr/09b.gif', 'images/nr/10b.gif', 'images/nr/11b.gif', 'images/nr/12b.gif', 'images/nr/13b.gif', 'images/nr/14b.gif', 'images/nr/15b.gif', 'images/nr/16b.gif', 'images/nr/17b.gif', 'images/nr/18b.gif', 'images/nr/19b.gif', 'images/nr/20b.gif', 'images/projekty/realiz_01.gif', 'images/projekty/realiz_02.gif'], i; // obrazy
thumbsImgs['imgs'] = [];
for (i = 0; i < imgs.length; i++) {
	thumbsImgs['imgs'][i] = new Image();
	thumbsImgs['imgs'][i].src = imgs[i];
}})();
// funkcja łagodnie zmienia obraz
var swapImg;
var swapImage = function(e, img, id) {
	if ($.browser.msie) {
		if (img) {
			swapImg = $(e).children(id).attr('src');
			$(e).children(id).attr('src', img);
		} else
			$(e).children(id).attr('src', swapImg);
		return;
	}
	$(e).children(id).stop(); // zatrzymuje poprzednią animację
	if (img) {
		$(e).css('background-image', 'url(' + img + ')');
		$(e).children(id).fadeTo(200, 0.01); // ukrycie
	} else
		$(e).children(id).fadeTo(200, 1); // pokazanie
};
// gdy załadowano stronę
var functionStartN = 0;
var functionStart = function() {
	switch (functionStartN) {
		case 0:
			// wczytuje obrazy na stronie
			var index, i, imgs = $('img'), l = imgs.length;
			thumbsImgs['all'] = [];
			$('img').not('[src$="#"]').each(function(index, el) {
				thumbsImgs['all'][index] = new Image();
				thumbsImgs['all'][index].src = $(el).attr('src');
			});
			imagesToCheck = thumbsImgs['all'];
			imagesTimeout = 0;
			imgsTime = (new Date()).valueOf();
			functionStartN = 1;
			checkImages();
		break;
		case 1:
			// wczytuje miniaturki do pamięci
			var index, i, iter = 0;
			thumbsImgs['minis'] = [];
			thumbsImgs['minis'][gallery_first] = [];
			for (i = 0; i < gallery_pics[gallery_first].length; i++) {
				thumbsImgs['minis'][gallery_first][iter] = new Image();
				thumbsImgs['minis'][gallery_first][iter].src = 'image.php?id1=' + gallery_first + '&id2=' + gallery_pics[gallery_first][i].replace('.jpg', '') + '&type=srednie';
				iter++;
			}
			thumbsImgs['minis'][gallery_first][iter] = new Image();
			thumbsImgs['minis'][gallery_first][iter].src = 'zdjecia_projektow/' + gallery_first + '/nazwa.jpg';
			imagesToCheck = thumbsImgs['minis'][gallery_first];
			imagesTimeout = 0;
			imgsTime = (new Date()).valueOf();
			functionStartN = 2;
			checkImages();
		break;
		case 2:
			$('#omenusd div[id^=omenu_]').hide(); // ukrywa boksy z opisami w O nas
			$('#omenus div[id^=omenu_]').hide(); // ukrywa boksy z treścią w O nas
			$('#table_zespol .menu_link div[id]').css('padding-bottom', '1em'); // dodaje dolny margines do list subkategorii w O nas
			$('#table_zespol .menu_link div[id]').hide(); // ukrywa subkategorie w O nas
			$('#table_zespol .menu_link a:first').click(); // otwiera pierwszą stronę w O nas
			$('#table_projekty .menu_link div[id]').hide(); // ukrywa subkategorie w Projektach
			$('#table_projekty .menu_link div[id]').css('padding-bottom', '1em'); // dodaje dolny margines do list subkategorii w Projektach
			$('#table_projekty .menu_link a:first').click(); // // otwiera pierwszą stronę w Projektach
			$('#pmenu_pics table').hide(); // ukrywa miniaturki w Projektach
			$('#pmenu_desc > table').css('position', 'absolute'); // wypozycjonowuje tabele z danymi (hack dla IE) w Projektach
			$('#pmenu_desc > table').css('top', '0'); // pozycja tabeli z danymi w Projektach
			$('#pmenu_desc > table').hide(); // ukrywa tabele z danymi w Projektach
			$('#pmenu_desc > table:first').show(); // pierwsza tabela musi być pokazana (jakiś bug)
			$('#pmenu_pics table:first a:first img:last').hide(); // czerwony prostokąt obok pierwszej miniaturki (bug)
			 // bug IE
			$('#window_thumbnails').css('margin-left', '50px').css('float', 'left');
			// ustawia zdarzenie kliknięcia na przycisku
			$('#window_close').click(function() {
				$('#window_back').fadeOut(200); // ukrywa galerię
			});
			showPage('#table_loading', '#table_index'); // pokaż stronę startową
			functionStartN = 3;
		break;
		case 3:
			var n = tie; // pozycja obrazu
			$('#window_bar a:nth(' + n + ')').click();
			$('#window_loading').fadeOut(100, function() {
				$('#window_main').show().fadeTo(200, 1);
				setThumbs(); // przesuwa listę miniaturek na odpowiednią pozycję
			}); // wyświetla galerię
		break;
		case 4:
			$('#window_back').fadeOut(100, function() {
				ptimer = setTimeout('pmenu_anime("' + pmenu_[0] + '")', 2500); // odpalenie animacji (druga strona)
			}); // wyświetla projekt
		break;
	}
};
// sprawdza załadowane obrazy
var imagesToCheck = [], imagesTimeout = 0, imgsTime = (new Date()).valueOf();
var checkImages = function() {
	if ((new Date()).valueOf() - imgsTime > 20000) {
		var i, l = imagesToCheck.length, k = 0;
		thumbsImgs['time' + imagesTimeout] = [];
		for (i = 0; i < l; i++) {
			if (!imagesToCheck[i].complete) {
				thumbsImgs['time' + imagesTimeout][k] = new Image();
				thumbsImgs['time' + imagesTimeout][k].src = imagesToCheck[i].src;
				k++;
			}
		}
		imgsTime = (new Date()).valueOf();
		imagesToCheck = thumbsImgs['time' + imagesTimeout];
		imagesTimeout++;
		checkImages();
		return;
	}
	var l = imagesToCheck.length, complete = 0, all = 0;
	for (var i = 0; i < l; i++) {
		if (imagesToCheck[i].complete)
			complete++;
		all++;
	}
	if (complete == all)
		functionStart();
	else {
		if (functionStartN > 2)
			$('#window_loading').html('Trwa &#0322;adowanie obraz&#xF3;w...<br />' + complete + ' / ' + all + (imagesTimeout ? ' (' + (imagesTimeout + 1) + ')' : ''));
		else
			$('#table_loading td').html('Trwa &#0322;adowanie strony...<br />' + complete + ' / ' + all + (imagesTimeout ? ' (' + (imagesTimeout + 1) + ')' : ''));
		setTimeout('checkImages();', 100);
	}
};
// gdy załadowano dokument
$(document).ready(function() {
	imagesToCheck = thumbsImgs['imgs'];
	checkImages();
});
// ładuje obrazy na stronie

// funkcja przełącza strony
var showPage = function(id1, id2) {
	$(id1).fadeOut(500); // ukrycie strony
	$(id2).fadeIn(500); // pokazanie strony
};
var omenu_ = ['', '#']; // tablica z danymi o poprzedniej stronie O nas
// funkcja wyświetlająca stronę O nas
var omenu = function(e, id, sub) {
	if (sub == '-') { // jeśli podkategoria
		if (id != omenu_[0]) { // żeby nie pokazywać ponownie tej samej strony
			// zmiana klasy linków
			$('#table_zespol .menu_link .link_wybrany').removeClass('link_wybrany').addClass('footer_link');
			$(e).removeClass('footer_link').addClass('link_wybrany');
			if (omenu_[0] != '') {
				$(omenu_[0]).slideUp(200); // zwija treść
				$(omenu_[0] + '_desc').slideUp(200); // zwija opis
			}
			$(id).slideDown(200); // pokazuje treść
			$(id + '_desc').slideDown(200); // pokazuje opis
		}
		omenu_ = [id, omenu_[1]]; // ustawia tablicę z danymi o poprzedniej stronie
	} else if (sub == '#') { // jeśli kategoria z treścią
		if (id != omenu_[0]) { // żeby nie pokazywać ponownie tej samej strony
			if (omenu_[1] != '#')
				$(omenu_[1]).slideUp(200); // ukrywa podkategorię
			$('#table_zespol .menu_link .link_glowny').removeClass('link_glowny').addClass('footer_link_gl');
			$(e).removeClass('footer_link_gl').addClass('link_glowny');
			if (omenu_[0] != '') {
				$(omenu_[0]).slideUp(200); // zwija treść
				$(omenu_[0] + '_desc').slideUp(200); // zwija opis
			}
			$(id).slideDown(200); // pokazuje treść
			$(id + '_desc').slideDown(200); // pokazuje opis
		}
		omenu_ = [id, sub]; // ustawia tablicę z danymi o poprzedniej stronie
	} else { // jeśli kategoria
		if (id != omenu_[1]) { // żeby nie pokazywać ponownie tej samej kategorii
			if (omenu_[1] != '#')
				$(omenu_[1]).slideUp(200); // ukrywa podkategorię
			$(sub).slideDown(200); // pokazuje podkategorię
			// zmiana klasy linków
			$('#table_zespol .menu_link .link_glowny').removeClass('link_glowny').addClass('footer_link_gl');
			$(e).removeClass('footer_link_gl').addClass('link_glowny');
		}
		omenu_ = [omenu_[0], sub]; // ustawia tablicę z danymi o poprzedniej stronie
		$('#table_zespol .menu_link ' + sub + ' a:first').click(); // wybiera pierwszą podkategorię
	}
};
var pmenu_ = ['', '-', ''], phover = '', ihover = false, ptimer = 0, pel, gallery_n, gallery_id, _pos = 0; // trochę zmiennych
// funkcja wyświetlająca projekt
var pmenu = function(e, id, sub, p) {
	if (sub == '-') { // jeśli podkategoria
		if (id != pmenu_[0]) { // żeby nie pokazywać ponownie tego samego projektu
			// zmiana klasy linków
			$('#table_projekty .menu_link .link_wybrany').removeClass('link_wybrany').addClass('footer_link');
			$(e).removeClass('footer_link').addClass('link_wybrany');
			if (pmenu_[0] != '') {
				$(pmenu_[0]).fadeOut(200); // ukrywa dane o projekcie
				$(pmenu_[0] + '_m img:last').fadeIn(200); // zmienia bloczek obok miniaturki na szary
			}
			$(id).fadeIn(200); // pokazuje dane o projekcie
			$(id + '_m img:last').fadeOut(200); // zmienia bloczek obok miniaturki na czerwony
		}
		$(id + ' table img:first').click(); // wybiera pierwszą stronę (paginacja)
		pel = 0; // numer strony
		pmenu_ = [id, pmenu_[1], pmenu_[2]]; // ustawia tablicę z danymi o poprzednim projekcie
		projPreload(p);
	} else { // jeśli kategoria
		if (id != pmenu_[2]) { // żeby nie pokazywać ponownie tej samej kategorii
			if (pmenu_[0] != '')
				$(pmenu_[1]).slideUp(200); // ukrywa podkategorię
			$(sub).slideDown(200); // pokazuje podkategorię
			// zmiana klasy linków
			$('#table_projekty .menu_link .link_glowny').removeClass('link_glowny').addClass('footer_link_gl');
			$(e).removeClass('footer_link_gl').addClass('link_glowny');
			$(pmenu_[2] + '_pics').slideUp(200); // ukrywa miniaturki
			$(id + '_pics').slideDown(200); // pokazuje miniaturki
		}
		pmenu_ = [pmenu_[0], sub, id]; // ustawia tablicę z danymi o poprzednim projekcie
		$('#table_projekty .menu_link ' + sub + ' a:first').click(); // wybiera pierwszą podkategorię
	}
};
// funkcja przełącza obrazy w Projektach
var pmenu_anime = function(id) {
	var n = $(id + ' table img').length; // ilość obrazów
	pel++;
	if (pel >= n) // jeśli koniec, od początku
		pel = 0;
	$(id + ' table img:nth(' + pel + ')').click(); // zaznacza obraz
	ptimer = setTimeout('pmenu_anime("' + id + '")', 2500); // przełączenie na kolejny obraz
};
// funkcja zmienia obraz w Projektach
var tie;
var toggleImage = function(e, img) {
	tie = $(e).attr('src').substring(10, $(e).attr('src').length - 5) * 1 - 1; // pozycja obrazu
	clearTimeout(ptimer); // zatrzymuje automatyczne przełączanie obrazów
	if ($('#proj_img img').attr('src') == img) // jeśli obraz jest wyświetlony, nie rób nic
		return;
	$('#proj_img').css('background-image', 'url(' + $('#proj_img img').attr('src') + ')'); // stary obraz staje się tłem
	$('#proj_img img').hide(); // ukrycie obrazu
	$('#proj_img img').attr('src', img); // zmiana obrazu
	$('#proj_img img').fadeIn(400); // animacja przejścia obrazu
	if (ihover)
		$(ihover).attr('src', $(ihover).attr('src').substring(0, $(ihover).attr('src').length - 5) + 'a.gif'); // przełączenie paginacji
	$(e).attr('src', $(e).attr('src').substr(0, $(e).attr('src').length - 5) + 'b.gif'); // przełączenie paginacji
	$('#proj_img img').unbind('click'); // usuwa zdarzenie kliknięcia (dla poprzednich obrazów, by nie było kłótni)
	// zdarzenie wykonywane po kliknięciu na obrazie (otwarcie galerii)
	$('#proj_img img').click(function() {
		clearTimeout(ptimer); // zatrzymuje automatyczne przełączanie obrazów
		scroll(0,0); // przewija stronę do góry jeśli potrzeba
		gallery_n = $(pmenu_[0] + ' table img').length; // ilość obrazów
		_pos = 0; // pozycja listy miniaturek na początek
		gallery_id = $('#proj_img img').attr('src').substring(14, $('#proj_img img').attr('src').substring(14).search('&') + 14); // przechowuje ścieżkę dostępu do zdjęć projektu
		// tworzy listę miniaturek
		var str = '';
		for (var i = 0; i < gallery_n; i++)
			str += '<a href="javascript:" onclick="showImage(' + i + ')"><img src="image.php?id1=' + gallery_id + '&id2=' + gallery_pics[gallery_id][i].replace('.jpg', '') + '&type=miniatura" width="150" height="113" alt="" /></a>';
		$('#window_bar').html(str);
		$('#window_main').fadeTo(0, 0.01).hide();
		$('#window_loading').show();
		$('#window_back').fadeIn(200); // wyświetla galerię
		var n = $(e).attr('src').substring(10, $(e).attr('src').length - 5) * 1 - 1; // pozycja obrazu
		galPreload(gallery_id);
		imagesToCheck = thumbsImgs[gallery_id];
		imagesTimeout = 0;
		imgsTime = (new Date()).valueOf();
		functionStartN = 3;
		checkImages();
		if (n >= 4)
			_pos = (n >= gallery_n - 4 ? gallery_n - 4 : n - 2);
	});
	ihover = e; // poprzedni element paginacji ląduje do zmiennej
};
// wczytuje obrazy galerii
var galPreload = function(index) {
	var i, l = gallery_pics[index].length;
	thumbsImgs[index] = [];
	for (i = 0; i < l; i++) {
		thumbsImgs[index][i] = new Image();
		thumbsImgs[index][i].src = 'image.php?id1=' + index + '&id2=' + gallery_pics[index][i].replace('.jpg', '') + '&type=miniatura';
		thumbsImgs[index][i + l] = new Image();
		thumbsImgs[index][i + l].src = 'image.php?id1=' + index + '&id2=' + gallery_pics[index][i].replace('.jpg', '') + '&type=big';
	}
};
// wczytuje miniaturki do pamięci
var projPreload = function(index) {
	if (typeof thumbsImgs['minis'][index] == 'object')
		return;
	$('#window_main').fadeTo(0, 0.01).hide();
	$('#window_loading').show();
	$('#window_back').fadeIn(200);
	var i, iter = 0;
	thumbsImgs['minis'][index] = [];
	for (i = 0; i < gallery_pics[index].length; i++) {
		thumbsImgs['minis'][index][iter] = new Image();
		thumbsImgs['minis'][index][iter].src = 'image.php?id1=' + index + '&id2=' + gallery_pics[index][i].replace('.jpg', '') + '&type=srednie';
		iter++;
	}
	thumbsImgs['minis'][index][iter] = new Image();
	thumbsImgs['minis'][index][iter].src = 'zdjecia_projektow/' + index + '/nazwa.jpg';
	imagesToCheck = thumbsImgs['minis'][index];
	imagesTimeout = 0;
	imgsTime = (new Date()).valueOf();
	functionStartN = 4;
	$('#window_back').height($('#table_projekty').height());
	checkImages();
}
// wyświetla zdjęcie w galerii
var showImage = function(i) {
	// ukrycie obrazu
	$('#window_image_nav').fadeOut(200, function() {
		$('#window_image img').attr('src', 'image.php?id1=' + gallery_id + '&id2=' + gallery_pics[gallery_id][i].replace('.jpg', '') + '&type=big'); // zmiana obrazu
		if ($.browser.msie) { // dla powalonego IE
			if (i == 0)
				$('#window_image_nav_left').width(0);
			else
				$('#window_image_nav_left').width('49%');
			if (i == gallery_pics[gallery_id].length - 1)
				$('#window_image_nav_right').width(0);
			else
				$('#window_image_nav_right').width('49%');
		} else { // dla normalnych przeglądarek
			if (i == 0)
				$('#window_image_nav_left').hide();
			else
				$('#window_image_nav_left').show();
			if (i == gallery_pics[gallery_id].length - 1)
				$('#window_image_nav_right').hide();
			else
				$('#window_image_nav_right').show();
		}
		// pokazanie obrazu
		$('#window_image_nav').fadeIn(300, function() {
			$('#window_image_nav').animate({
				width: $('#window_image img').width(),
				height: $('#window_image img').height()
			}, 200).css('margin', '0 auto');
			$('#window_image_nav_left').unbind().click(function() {
				showImage(i - 1);
				prevThumb();
			});
			$('#window_image_nav_right').unbind().click(function() {
				showImage(i + 1);
				nextThumb();
			});
		});
	});
};
// przewija listę miniaturek w lewo
var prevThumb = function() {
	if (_pos == 0)
		return;
	_pos--; // dekrementacja
	setThumbs();
};
// przewija listę miniaturek w prawo
var nextThumb = function() {
	if (_pos >= gallery_n - 4)
		return;
	_pos++; // inkrementacja
	setThumbs();
};
// przesuwa listę miniaturek
var setThumbs = function() {
	// ukrywa lub pokazuje lewą strzałkę
	if (_pos == 0) {
		$('#window_nav_left').hide();
		$('#window_thumbnails').css('margin-left', '50px');
	} else {
		$('#window_nav_left').show();
		$('#window_thumbnails').css('margin-left', '0');
	}
	// ukrywa lub pokazuje prawą strzałkę
	if (_pos >= gallery_n - 4)
		$('#window_nav_right').hide();
	else
		$('#window_nav_right').show();
	$('#window_bar').animate({marginLeft: -_pos * 160}, 400); // przesuwa o jedną miniaturkę
};
// ustawia zdarzenie najechania kursorem na miniaturkę w Projektach
$('#pmenu_pics a').mouseover(function() {
	$(this).children('img:last').stop(); // zatrzymuje animację, jeśli jest wykonywana
	$(this).children('img:last').fadeTo(200, 0); // zmienia obraz na czerwony prostokąt
});
// ustawia zdarzenie zjechania kursora z miniaturki w Projektach
$('#pmenu_pics a').mouseout(function() {
	$(this).children('img:last').stop(); // zatrzymuje animację, jeśli jest wykonywana
	$(this).children('img:last').fadeTo(200, 1); // przywraca poprzedni stan obrazu
});
// ustawia zdarzenie kliknięcia na miniaturce w Projektach
$('#pmenu_pics a').click(function(e) {
	$('#' + this.id.substr(0, this.id.length - 2) + '_a').click(); // wykonuje kliknięcie na pozycję w menu (podkategorię)
	$(this).children('img:last').stop(); // zatrzymuje animację
	$(this).children('img:last').hide(); // pokazuje czerwony prostokąt
});
// ustawia zdarzenie najechania kursorem na element paginacji w Projektach
$('#pmenu_desc table table img').mouseover(function() {
	phover = $(this).attr('src'); // przechowuje poprzedni stan elementu
	swapImage($(this).parent(), phover.substr(0, phover.length - 5) + 'b.gif'); // zmienia obraz na czerwony kwadrat
});
// ustawia zdarzenie zjechania kursora z elementu paginacji w Projektach
$('#pmenu_desc table table img').mouseout(function() {
	swapImage($(this).parent()); // przywraca poprzedni stan obrazu
});
