
var contentHeight, neueHoehe, i, halbeStrecke, beschleunigung, neueAusgabe;

addLoadEvent(init);

// funktion zum hinzufügen eines onLoad-events
function addLoadEvent(func) {
  	var oldonload = window.onload;
 	if (typeof window.onload != 'function') {
    	window.onload = func;
  	} else {
    	window.onload = function() {
      		init();
    	}
  	}
}

function init() {
				loadContent(-1);
			}

function changeIssue(id) {
	neueHoehe = contentHeight;
	halbeStrecke = contentHeight / 2;
	beschleunigung = 1;
	i = 0;
	schrumpfen = window.setInterval("shrink()",10);
	neueAusgabe = id;
}

function shrink() {
	neueHoehe = neueHoehe - i;
	i += beschleunigung;
	
	if (neueHoehe < halbeStrecke) {
		beschleunigung = -1;
	}
	if (neueHoehe < 0) {
		neueHoehe = 0;
		window.clearInterval(schrumpfen);
		loadContent(neueAusgabe);
	}
	
	document.getElementById("exchangeableContent").style.height = neueHoehe + "px";
}

function expand() {
	neueHoehe = neueHoehe - i;
	i += beschleunigung;
	
	if (neueHoehe > halbeStrecke) {
		beschleunigung = 1;
	}
	if (neueHoehe > contentHeight) {
		neueHoehe = contentHeight;
		window.clearInterval(erweitern);
	}
	
	document.getElementById("exchangeableContent").style.height = neueHoehe + "px";
	document.getElementById("isloading").style.background = "none";
}

function getAvailableIssues() {
		var req = createHTTPRequest();
		req.open("GET", "getAvailableIssues.php", true);
		req.onreadystatechange = function() {
		switch (req.readyState) {
	        	case 4:
	        		if (req.status!=200) {
						// Fehler
	        		} else {
	        			inhalt = req.responseText;
	        			document.getElementById("availableIssues").innerHTML = inhalt;
						
						contentHeight = document.getElementById("exchangeableContentHeight").offsetHeight;
						neueHoehe = 0;
						halbeStrecke = contentHeight / 2;
						beschleunigung = -1;
						i = 0;
						erweitern = window.setInterval("expand()",10);
	            	}
					break;
	        	default:
	            	return false;
	        		break;     
	    	}
	  	}
		req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	 	req.send(null);
	}

//	lädt inhalt ins passive layer und schiebt es dann ins bild
	function loadContent(id) {
		document.getElementById("isloading").style.background = "url('pix/isloading.gif') repeat-x 0 0";
		// bild neu laden
		myImage = new Image(320,240);
		tmp = new Date();
		tmp = "?" + tmp.getTime();
		myImage.src = "iPhoneWebcam/iphonecam.jpg" + tmp;
		document.getElementById("image").src = myImage.src;
		
		if (id == -2) {
			document.getElementById("ausgabe").innerHTML = "<a href=\"javascript:changeIssue(-1)\">zum Blog</a>";
			document.getElementById("datum").innerHTML = "zuletzt geändert am 04. Januar 2009";
			document.getElementById("headline").innerHTML = "Dies ist das Impressum";
			document.getElementById("column1").innerHTML = "Rechtliches: alle Inhalte in diesem Blog wurden, sofern nicht anders angegeben, von Jan Mensing verfasst. Darüber hinaus übernehme ich keinerlei Haftung für Inhalte, die nicht aus meiner Feder stammen bzw. nicht auf von mir verwalteten Medien gespeichert sind oder auf die verlinkt wird. Wer auf Links klickt, übernimmt damit die volle Verantwortung für alles, was kommt.";
			document.getElementById("column2").innerHTML = "<h1>Anschrift</h1>Jan Mensing<br />Junkerstraße 19<br />48153 Münster";
			document.getElementById("previousIssue").innerHTML = "";
			document.getElementById("nextIssue").innerHTML = "";
			
			contentHeight = document.getElementById("exchangeableContentHeight").offsetHeight;
			neueHoehe = 0;
			halbeStrecke = contentHeight / 2;
			beschleunigung = -1;
			i = 0;
			erweitern = window.setInterval("expand()",10);
		} else {
			if (id == -3) {
				loadLubuxlloydTweets();
			} else {
				var req = createHTTPRequest();
				req.open("GET", "getContent.php?id=" + id, true);
				req.onreadystatechange = function() {
				switch (req.readyState) {
			        	case 4:
			        		if (req.status!=200) {
								// Fehler
			        		} else {
			        			inhalt = req.responseText;
			        			trenner1 = 0;
			        			laenge = inhalt.length;
			        			drittel = laenge / 2;
			        			trenner1 = Math.round(1 * drittel);
			        			trenner2 = Math.round(2 * drittel);
								while (inhalt.substr(trenner1, 7) != "</p><p>" && trenner1 < laenge) {
									trenner1--;
								}
								
								teil1 = inhalt.substr(0,trenner1 + 4);
								teil2 = inhalt.substr(trenner1 + 4);
								
								document.getElementById("column1").innerHTML = "<p>" + teil1;
								document.getElementById("column2").innerHTML = teil2 + "</p>";
								
								loadDate(id);
			            	}
							break;
			        	default:
			            	return false;
			        		break;     
			    	}
			  	}
				req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			 	req.send(null);
			}
		}
	}

function loadLubuxlloydTweets() {
	var req = createHTTPRequest();
	req.open("GET", "twitter.php5?twitterID=lubuxlloyd", true);
	req.onreadystatechange = function() {
	switch (req.readyState) {
        	case 4:
        		if (req.status!=200) {
					// Fehler
        		} else {
        			inhalt = req.responseText;
					
					document.getElementById("column1").innerHTML = "<h2>Lubux Tweets</h2><ul>" + inhalt + "</ul>";
					document.getElementById("column2").innerHTML = "";
					document.getElementById("ausgabe").innerHTML = "<a href=\"javascript:changeIssue(-1)\">zum Blog</a>";
					document.getElementById("datum").innerHTML = "<a href=\"http://twitter.com/lubuxlloyd\" target=\"_blank\">twitter.com/lubuxlloyd</a>";
					document.getElementById("headline").innerHTML = "Lubux Lloyd<br />Tweets";
					document.getElementById("previousIssue").innerHTML = "";
					document.getElementById("nextIssue").innerHTML = "";
					
					loadCheckYTTweets();
            	}
				break;
        	default:
            	return false;
        		break;     
    	}
  	}
	req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
 	req.send(null);
}

function loadCheckYTTweets() {
	var req = createHTTPRequest();
	req.open("GET", "twitter.php5?twitterID=CheckYT", true);
	req.onreadystatechange = function() {
	switch (req.readyState) {
        	case 4:
        		if (req.status!=200) {
					// Fehler
        		} else {
        			inhalt = req.responseText;
					document.getElementById("column2").innerHTML = "<h2>YouTube-Empfehlungen</h2><ul>" + inhalt + "</ul>";
					
					contentHeight = document.getElementById("exchangeableContentHeight").offsetHeight;
					neueHoehe = 0;
					halbeStrecke = contentHeight / 2;
					beschleunigung = -1;
					i = 0;
					erweitern = window.setInterval("expand()",10);
            	}
				break;
        	default:
            	return false;
        		break;     
    	}
  	}
	req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
 	req.send(null);
}
	
function loadDate(id) {
		var req = createHTTPRequest();
		req.open("GET", "getDate.php?id=" + id, true);
		req.onreadystatechange = function() {
		switch (req.readyState) {
	        	case 4:
	        		if (req.status!=200) {
						// Fehler
	        		} else {
	        			inhalt = req.responseText;
						document.getElementById("datum").innerHTML = inhalt;
						
						loadIssue(id);
	            	}
					break;
	        	default:
	            	return false;
	        		break;     
	    	}
	  	}
		req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	 	req.send(null);
}

function loadIssue(id) {
		var req = createHTTPRequest();
		req.open("GET", "getIssue.php?id=" + id, true);
		req.onreadystatechange = function() {
		switch (req.readyState) {
	        	case 4:
	        		if (req.status!=200) {
						// Fehler
	        		} else {
	        			inhalt = req.responseText;
						document.getElementById("ausgabe").innerHTML = "Ausgabe " + inhalt + " [<a href='http://www.lubux.com/?read=" + inhalt + "'>Link</a>]";
						
						loadHeadline(id);
	            	}
					break;
	        	default:
	            	return false;
	        		break;     
	    	}
	  	}
		req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	 	req.send(null);
}
	
function loadHeadline(id) {
		var req = createHTTPRequest();
		req.open("GET", "getHeadline.php?id=" + id, true);
		req.onreadystatechange = function() {
		switch (req.readyState) {
	        	case 4:
	        		if (req.status!=200) {
						// Fehler
	        		} else {
	        			inhalt = req.responseText;
						document.getElementById("headline").innerHTML = inhalt;
						
						getPreviousIssue(id);
	            	}
					break;
	        	default:
	            	return false;
	        		break;     
	    	}
	  	}
		req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	 	req.send(null);
}

function getPreviousIssue(id) {
		var req = createHTTPRequest();
		req.open("GET", "getPreviousIssue.php?id=" + id, true);
		req.onreadystatechange = function() {
		switch (req.readyState) {
	        	case 4:
	        		if (req.status!=200) {
						// Fehler
	        		} else {
	        			inhalt = req.responseText;
						if (inhalt != "") {
		        			document.getElementById("previousIssue").innerHTML = inhalt;
						} else {
		        			document.getElementById("previousIssue").innerHTML = "";
						}
						
						getNextIssue(id);
	            	}
					break;
	        	default:
	            	return false;
	        		break;     
	    	}
	  	}
		req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	 	req.send(null);
	}
	
function getNextIssue(id) {
		var req = createHTTPRequest();
		req.open("GET", "getNextIssue.php?id=" + id, true);
		req.onreadystatechange = function() {
		switch (req.readyState) {
	        	case 4:
	        		if (req.status!=200) {
						// Fehler
	        		} else {
	        			inhalt = req.responseText;
						if (inhalt != "") {
		        			document.getElementById("nextIssue").innerHTML = inhalt;
						} else {
		        			document.getElementById("nextIssue").innerHTML = "";
						}
						
						contentHeight = document.getElementById("exchangeableContentHeight").offsetHeight;
						neueHoehe = 0;
						halbeStrecke = contentHeight / 2;
						beschleunigung = -1;
						i = 0;
						erweitern = window.setInterval("expand()",10);
	            	}
					break;
	        	default:
	            	return false;
	        		break;     
	    	}
	  	}
		req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	 	req.send(null);
	}
	
// 	erstellt einen HTTPRequest
	function createHTTPRequest() {
		try { 
			req = new XMLHttpRequest();
			return req;
		} catch (e) {
			try { 
				req = new ActiveXObject("Msxml2.XMLHTTP"); 
				return req;
			} catch (e) {
	        	try { 
					req = new ActiveXObject("Microsoft.XMLHTTP"); 
					return req;
				} catch (failed) { 
					req = null;
					return req;
				}
	    	}  
		}
	}

//	öffnet und schließt ein fenster zum schreiben eines kommentars
	function toggleCommentPopup() {
		if (document.getElementById("commentpopup").style.display != "block") {
			document.getElementById("commentpopup").style.display = "block";
		} else {
			document.getElementById("commentpopup").style.display = "none";
		}
	}

//	speichert einen kommentar
	function submitComment() {
		toggleCommentPopup();
	}
