//Autor: Grzegorz Nowacki
//Nazwa pliku: library.js
//Biblioteka funkcji javascript

//predefiniowane zmienne
var onLoad = false;
var onActivDiv = 0;
var daneItems = new Array();
var menuArray = new Array();
menuArray['Kategoria'] = new Array();

function onloadHandler(){
	onLoad = true;
	
	//zaczytanie danych z xml do tablicy daneItems
	getXMLmenu('menu', null);
	
	//zaczytanie danych z xml do tablicy menuItems
	menuCmsDane();
	if(typeof window.sluchacz == "function"){
		sluchacz();
	}
}

function menuCmsDane(){
	if(typeof window.getXML == 'function'){
		getXML('dane', '');
	}
}

	/*
	* Funkcja obsługi AJAX-a odczytująca dane z pliku xml stworzonego przez PHP
	*/
	var daneItems = new Array();
	
	function getXMLmenu(plik, fraza){

		var request = null;
		var xml_response = null;
		
		if(window.XMLHttpRequest){
			request = new XMLHttpRequest();
		}else if(window.AcrtiveXObject){
			request = newActiveXObject('Microfoft.XMLHTTP');
		}
		
		if(request){
			request.open('GET', 'xml/'+plik+'.xml?t='+Math.round(1000 * Math.random())); //unikniecie cache - owania
			request.onreadystatechange = function(){
				if(request.readyState == 4){
					
					menuArray['Kategoria'] = new Array();
					
					xml_response = request.responseXML;
					//alert('Plik z danymi został odczytany');
				
					/*Odczytanie ilości kategorii*/
					var root = xml_response.getElementsByTagName('kategoria');
					var rootLength = root.length;
					
					for(iKat = 0; iKat < rootLength; iKat++){
						
						var index = 1;
						
						/*odczytanie kategorii*/
						var kategoria = root[iKat].attributes.getNamedItem('name').value;
						
						daneItems[kategoria] = new Array();
						
						/*odczytanie podkategorii w  kategoriii*/
						var rootPodKat = root[iKat].getElementsByTagName('poz');
					
						for(var i = 0; i<rootPodKat.length; i++){
							if(rootPodKat[i].hasChildNodes != null){
								
								daneItems[kategoria][index] = new Array();
								daneItems[kategoria][index]['ITEM'] = rootPodKat[i].getElementsByTagName('item')[0].firstChild.nodeValue;
								daneItems[kategoria][index]['LINK'] = rootPodKat[i].getElementsByTagName('link')[0].firstChild.nodeValue;
								
								index++;
							}
						}	
					}
					
					pasekNawigacyjny();
				}else{
					//document.getElementById(plik).innerHTML = 'wyszukiwanie';
				}
			}
			request.send(null);
		}else{
			alert('Przeglądarka nie obsługuje technologii Ajax');
		}
	}


	function linkOpacity(action){
		if(action==1){
			window.document.getElementById('zdjecie').style.filter = 'alpha(opacity=80)';
		}else if(action==0){
			window.document.getElementById('zdjecie').style.filter = 'alpha(opacity=100)';	
		}
	}
	
	function loadFoto(sciezka){
		window.document.getElementById('loadFoto').innerHTML = '<img id="loadFotoSize" align="center" src="pictures/'+sciezka+'" alt="Brak zdjęcia w bazie danych" style="border:1px solid #bbbbbb"><br><font style="font-size: 12px; font-weight: normal; color:#848484;">'+sciezka+'</font>';
		var szerokosc = window.document.getElementById('loadFotoSize').offsetWidth;
		if(szerokosc>700){
			window.document.getElementById('loadFoto').innerHTML = '<img id="loadFotoSize" align="center" src="pictures/'+sciezka+'" alt="Brak zdjęcia w bazie danych" style="width:700px; border:1px solid #bbbbbb"><br><font style="font-size: 12px; font-weight: normal; color:#848484;">'+sciezka+'</font>';
		}
	}
	
	function pasekNawigacyjny(){
		if((location.search == '' || location.search=='?strona=0&podstrona=0') && window.document.getElementById('pasekNawigacyjny')!=null){
			window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Strona główna';
		}else if(window.document.getElementById('pasekNawigacyjny')!=null){
			switch(location.search){
				case '?strona=menuCms':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania menu strony';
					break;
				case '?strona=sprawdzenieCms':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł nadzoru statusu podstron';
					break;
				case '?strona=zdjeciaCms':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania grafiką zamieszczoną na stronie';
					break;
				case '?strona=zdjeciaCms&opcja=dodaj':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania grafiką zamieszczoną na stronie >> Dodawanie grafiki';
					break;
				case '?strona=zdjeciaCms&opcja=kasuj':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania grafiką zamieszczoną na stronie >> Kasowanie grafiki';
					break;
				case '?strona=szablonCms':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania szablonami';
					break;
				case '?strona=szablonCms&opcja=lista':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania szablonami >> Lista szablonów';
					break;
				case '?strona=szablonCms&opcja=dodaj':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania szablonami >> Dodawanie szablonu';
					break;
				case '?strona=szablonCms&opcja=aktualizuj':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania szablonami >> Aktualizacja szablonu';
					break;
				case '?strona=konta':
					window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  Moduł zarządzania kontami urzytkowników';
					break;
				default:
					if(window.document.getElementById('aktywnaPozycjaMenu')!=null){
						var kategoria = window.document.getElementById('aktywnaPozycjaMenu').innerHTML;
						var lokalizacja = location.search;
						var lokalizacjaLength = lokalizacja.length;
						var podstrona = lokalizacja.substr(lokalizacja.lastIndexOf('podstrona=')+10,lokalizacjaLength);
						// wycinanie
						var Wyrazenie = /[^ a-zA-ZążśźęćńółĄŻŚŹĘĆŃÓŁ]/g;
						kategoria = kategoria.replace(Wyrazenie,"");
						
						if(navigator.appName=='Microsoft Internet Explorer'){
							kategoria = kategoria.substr(0, kategoria.length-1);
						}
						
						//wyświetlenie aktualnej lokalizacji
						podkategoria = window.document.getElementById('aktualnaPozycjaPodmenu').innerHTML;
						if(podstrona!=''){
							window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  '+kategoria+'  >>  '+podkategoria;
						}else{
							window.document.getElementById('pasekNawigacyjny').innerHTML = '<span style="padding-right:10px; font-weight:bold; color:rgb(255,160,150);">Lokalizacja:</span>  '+kategoria+'  >>  '+daneItems[kategoria][1]['ITEM'];
						}
					}
					break;
			}
		}
	}
	
									// Funkcje promocji
									function hidPromotionPanel(id){
										createCookie(id,'1',0);
										document.getElementById(id).style.display = "none";
									}
									
									function checkPromotionPanelState(id){
										if(readCookie(id)==null){
											document.getElementById(id).style.display = "";
										}
									}
									
									function createCookie(name,value,days) {
										if (days) {
											var date = new Date();
											date.setTime(date.getTime()+(days*24*60*60*1000));
											var expires = "; expires="+date.toGMTString();
										}
										else var expires = "";
										document.cookie = name+"="+value+expires+"; path=/";
									}

									function readCookie(name) {
										var nameEQ = name + "=";
										var ca = document.cookie.split(';');
										for(var i=0;i < ca.length;i++) {
											var c = ca[i];
											while (c.charAt(0)==" ") c = c.substring(1,c.length);
											//alert(c+' - '+c.substring(nameEQ.length,c.length));
											if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
										}
										return null;
									}

									function eraseCookie(name) {
										createCookie(name,"",-1);
									}
									
									setTimeout("checkPromotionPanelState('Promocja001');", 500);
