/* ajax.js by Stefan Bleilevens | last update: 2010-03-29 */

var xmlhttp;

/* manage content */

function getContent(pagename) {
	setDefaultImage()
	document.getElementById("content").innerHTML = "...Inhalt wird geladen...";
	jQuery("#ajaxloader").fadeIn(250);
	if (pagename.length==0) {
		return;
	}
	xmlhttp=GetXmlHttpObject()
	if (xmlhttp==null) {
		document.getElementById("content").innerHTML = "Ihr Browser unterstützt leider keine XML Anfragen";
		return;
	}
	var url="php/getContent.php";
	url=url+"?q="+pagename;
	url=url+"&sid="+Math.random();
	xmlhttp.onreadystatechange=stateChanged ;
	xmlhttp.open("GET",url,true);
	xmlhttp.send(null);
};

function stateChanged() {
	if (xmlhttp.readyState==4) {
		result = xmlhttp.responseText; // content
		var parts = result.split("||");
		contentText = parts[0];
		contentImageJS = parts[1];
		jQuery("#ajaxloader").fadeOut(250,function(){
			//jQuery('.scroll-pane').jScrollPane();														 
		});
		
		document.getElementById("content").innerHTML = contentText;
		document.getElementById("contentImage").innerHTML = contentImageJS;
		jQuery('a#bpp').fadeIn(200);
		jQuery('.scroll-pane').jScrollPaneRemove();
		noSpam();

		/* unbelieveable animation by a.schoen */
		if(contentImageJS.substring(0,4) == "<img"){
			jQuery("#outerContent img").load(function(){
				jQuery("#outerContent").animate({
					left: 0
				}, 500,function(){
					jQuery('.scroll-pane').jScrollPane({reinitialiseOnImageLoad: true});
				});
				jQuery("#contentImage").animate({
					left: 501
				}, 750);
			});
		} else {
			if(document.getElementById("outerContent").getElementsByTagName("img").length > 0){
				jQuery('#outerContent img').load(function(){
					jQuery('.scroll-pane').jScrollPane({reinitialiseOnImageLoad: true});													  
					
					jQuery("#outerContent").animate({
						left: 0
					}, 500);
					jQuery("#contentImage").animate({
						left: 501
					}, 750);
				});
			} else {
					jQuery('.scroll-pane').jScrollPane({reinitialiseOnImageLoad: true});													  
					
					jQuery("#outerContent").animate({
						left: 0
					}, 500);
					jQuery("#contentImage").animate({
						left: 501
					}, 750);
			}
		};
		galleryActive = false;
		
		/* end of playground for a.schoen */
	};
};

function setDefaultImage(){
	if(galleryActive){
		jQuery("#galleryContainer").fadeOut(250);
		jQuery("#splashscreen-container img").fadeOut(150, function(){
			document.getElementById("splashscreen-container").getElementsByTagName("img")[0].src = defaultImage;
			jQuery("#splashscreen-container img").load(function(){
				jQuery("#splashscreen-container img").fadeIn(200);
//				jQuery('a#bpp').fadeIn(200);
			});
		});
		galleryActive = false;
	};
};










/* manage gallery */

function getGallery(galleryname){
	jQuery("#ajaxloader").fadeIn(250);
//	alert("Galerie " + galleryname + " wird geladen");
	if(galleryname.length==0){
		return;
	}
	xmlhttp=GetXmlHttpObject()
	if(xmlhttp==null){
		alert("Ihr Browser unterstützt leider keine XML Anfragen");
		return;
	}
	var url="php/getGallery.php";
	url=url+"?q="+galleryname;
	url=url+"&sid"+Math.random();
	xmlhttp.onreadystatechange=stateChangedGallery;
	xmlhttp.open("GET",url,true);
	xmlhttp.send(null);
};

function stateChangedGallery(){
	if(xmlhttp.readyState==4){
		result = xmlhttp.responseText; // gallerycontent
		document.getElementById("gallery").innerHTML = result;
		jQuery("ul#gallery").css("margin-left","0");
		jQuery('a#bpp').fadeOut(200);
		jQuery("#galleryContainer img").load(function(){
			jQuery("#ajaxloader").fadeOut(250);
//			jQuery('#abpp').fadeOut(250);
			jQuery("#galleryContainer").fadeIn(250);
			
		});
		hideContent(false);
		viewImage(document.getElementById("gallery").getElementsByTagName("a")[0]);
		jQuery(document.getElementById("gallery").getElementsByTagName("img")[0]).addClass("activeThumb");
		jQuery("ul#gallery").css("width",(document.getElementById("gallery").getElementsByTagName("li").length*125));
		galleryActive = true;
		slideshowActive= false;
//		start_slideshow();
	};
};








/* create a new xmlHttpObject */

function GetXmlHttpObject() {
	if (window.XMLHttpRequest) {
		// code for IE7+, Firefox, Chrome, Opera, Safari
		return new XMLHttpRequest();
	}
	if (window.ActiveXObject) {
		// code for IE6, IE5
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
	return null;
};

function hideContent(setDefault){
	if(setDefault != false){
		setDefaultImage();
		jQuery('a#bpp').fadeIn(200);
	};
	jQuery("#outerContent").animate({
		left: "-800px"
	},500);
	jQuery("#contentImage").animate({
		left: "249px"
	},500);
};
