/* noodler.net */
var receiveReq = getXmlHttpRequestObject();
var page;
function getXmlHttpRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	} else {
	}
}
function refresh(r) {
  page = r;
	if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {
		receiveReq.open("GET", 'http://noodler.net/refresh?c='+Math.random()+'&page='+page, true);
		receiveReq.onreadystatechange = handleReceivePage; 
		receiveReq.send(null);
	}
}
function handleReceivePage() {
	if (receiveReq.readyState == 4) {
		var comments_div = document.getElementById('noodlecomments');
		comments_div.innerHTML = receiveReq.responseText;
		applyMarkdown();
    setTimeout('refresh(\''+page+'\')',10000);
	}
}
function latest() {
	if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {
		receiveReq.open("GET", 'http://noodler.net/latest?c='+Math.random(), true);
		receiveReq.onreadystatechange = handleReceiveLatest; 
		receiveReq.send(null);
	}
}
function handleReceiveLatest() {
	if (receiveReq.readyState == 4) {
		var comments_div = document.getElementById('latest');
		comments_div.innerHTML = receiveReq.responseText;
		applyMarkdown();
    setTimeout('latest()',10000);
	}
}
function switchLanguage(lang) {
  allEn=getElementsByClassName(document, "*", "en");
  allDe=getElementsByClassName(document, "*", "de");
  allJp=getElementsByClassName(document, "*", "jp");
  for(var i=0;i<allEn.length;i++){
    allEn[i].style.display='none';
  }
  for(var i=0;i<allDe.length;i++){
    allDe[i].style.display='none';
  }
  for(var i=0;i<allJp.length;i++){
    allJp[i].style.display='none';
  }
  allX=getElementsByClassName(document, "*", lang);
  for(var i=0;i<allX.length;i++){
    allX[i].style.display='block';
  }
}
function applyMarkdown() {
  allComments = getElementsByClassName(document,"*","comment");
  converter = new Showdown.converter();
  for(var i=0;i<allComments.length;i++){
    allComments[i].innerHTML=converter.makeHtml(allComments[i].innerHTML);
  }
}
/*
	Next bit written by Jonathan Snook, http://www.snook.ca/jonathan
	With add-ons by Robert Nyman, http://www.robertnyman.com
*/
function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}