/*data sector*/
var xmlFile="pagesdata.xml";

var lastHash="none";
var pageName="none";
var pageList=new Array();
var slide=0;

var bt=0;
var tmpReady=true;

var blankJS="";
var blankCSS="";

var mainMetaTitle=document.title;

//Inicjalizuje dane przed pierwszym załadowaniem strony
function loadData(){
		blankCSS=$("style[title=currentStyle]").html();
             $.ajax({
                 type: "GET",
                 url: xmlFile,
                 dataType: "xml",
		async:false,
		 beforeSend: function(){
			bt++;
		 },
                 success: function(xml) {
			 var counter=0;
			$(xml).find("page").each(function(){
				pageList[counter]=$(this).attr("name");

				$(this).find("image").each(function(){
					$.preload($(this).attr('src'));
				});

				htmlText="<div class=\"button\">"
				htmlText+="<a title=\""+$(this).find("name").text()+"\" href=\"#"+$(this).attr("name")+"\">";
				htmlText+="<img src=\""+$(this).find("image[type=main]").attr("src")+"\" alt=\""+$(this).find("title").text()+"\">";
				htmlText+="</a></div>";
				$("#switchBox").html($("#switchBox").html()+htmlText);

				htmlText="<div class=\"menuButton\">"
				htmlText+="<a title=\""+$(this).find("name").text()+"\" href=\"#"+$(this).attr("name")+"\">";
				htmlText+="<img src=\""+$(this).find("image[type=menu]").attr("src")+"\" alt=\""+$(this).find("title").text()+"\">";
				htmlText+="</a></div>";
				$("#menuBox").html($("#menuBox").html()+htmlText);

				$('a').attr('onFocus', 'blur(this)');

				counter++;
				
			});//each end
			bt--;
                 }//success end
             });// $.ajax end
	     setInterval("CheckForHash()", 100);
	     initAnimations();
}

//Sprawdza czy nastąpiła zmiana adresu strony
function CheckForHash(){
	sw=new Switchers();
	if(lastHash!=location.hash && bt==0){
		done=false;
		for(i in pageList){
			if(pageList[i]==location.hash.substr(1)){
				if(slide==2){
					sw.subToSub(pageList[i]);
				}else if(slide==1){
					sw.mainToSub(pageList[i]);
				}else{
					sw.showSub(pageList[i]);
				}
				done=true;
				break;
			}
		}if(!done){
			if(slide==2){
				sw.subToMain();
			}else if(slide==0){
				sw.showMain();
			}
		}

	}
	lastHash=location.hash;
}

var Switchers=function(){
	this.sa=new SwitchAnimations();
	
	//inicjalizuje przejście ze strony głównej na podstronę
	this.mainToSub=function(link){
		slide=2;
		this.sa.hideMain();
		loadSubPage(link, 0);
	}

	this.showSub=function(link){
		slide=2;
		loadSubPage(link, 0);
	}

	//inicjalizuje przejście z podstrony na stronę główną
	this.subToMain=function(){
		slide=1;
		this.sa.hideSubPage();
		document.title=mainMetaTitle;
		this.sa.showMain();
	}

	//inicjalizuje przejście z podstrony na inną podstronę
	this.subToSub=function(link){
		slide=2;
		this.sa.hideContent();
		loadSubPage(link, 1);
		
	}

	this.showMain=function(){
		slide=1;
		document.title=mainMetaTitle;
		this.sa.showMain();
	}

	function loadSubPage(link, tryb){
		pageName=link;
		var switcher=new SwitchAnimations();
		switcher.showPreloader();
		$.ajax({
			 type: "GET",
			 url: xmlFile,
			 dataType: "xml",
			async:false,
			  beforeSend: function(){
				bt++;

			},
			 success: function(xml) {
				 
				 tmpReady=false;
				$(xml).find("page[name="+link+"]").each(function(){
					
					var switcher=new SwitchAnimations();
					$("#dataBox").html("");
					$("style[title=currentStyle]").html(blankCSS);
					$(this).find("content css").each(function(){
						$("style[title=currentStyle]").html($("style[title=currentStyle]").html()+"@import \""+$(this).text()+"\";\n");
					});
					$.ajax({
						 type: "GET",
						 url: $(this).find("content").attr("src"),
						 async:false,
						 success: function(data) {

							$("#dataBox").html(data);
						 }
					});
					$(this).find("content js").each(function(){
						$.getScript($(this).text());
					});
					if(tryb==0)
						switcher.showSubPage($(this).attr('name'), $(this).find("color").attr("first"), $(this).find("color").attr("second"), $(this).find("image[type=main]").attr("src"));
					else
						switcher.showContent($(this).attr('name'));
					document.title=$(this).find("info title").text();
					$("link[rel='Shortcut Icon']").attr("href", $(this).find("image[type=favicon]").attr("src"));
				});//each end
				
				bt--;

			 }//success end
			 
		});// $.ajax end
		
	}
	
}

$(document).ready(function(){
	loadData();
});

//funkcja pomocnicza- preloading
//(dzięki webanal.pl)
var preload_cache = [];
jQuery.preload = function(){
        var args = arguments.length;
        for (var i = args; i--;)
        {
            var image = document.createElement('img');
            image.src = arguments[i];
            preload_cache.push(image);
        }
}

var dbgCache="";
function dbg(txt){
	dbgCache=dbgCache+"<br/>"+txt;
}


