function callback(serverData, serverStatus, id) {       // Anropas när vi fått datat från servern
	if(serverStatus == 200){
    try //Internet Explorer
      {
      xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
      xmlDoc.async="false";
      xmlDoc.loadXML(serverData);
      }
    catch(e)
      {
      try //Firefox, Mozilla, Opera, etc.
      {
      parser=new DOMParser();
      xmlDoc=parser.parseFromString(serverData,"text/xml");
      }
      catch(e)
      {
      alert(e.message);
      return;
      }
    }   	
   	if(id) document.getElementById(id).innerHTML = xmlDoc;   //Skriv ut datat i vårt HTML element
		return(xmlDoc);
	} else {
   	if(id) document.getElementById(id).innerHTML = 'Laddar...';
	}
}


function testinput(re, str){
	if (re.test(str))
		return true;
	else
		return false;
}

function ajaxRequest(openURL, id, handleXML) {
   var AJAX = null; // Skapa AJAX variablen.
   var currentTime = new Date();
   
   	 openThis=openURL;
     if (window.XMLHttpRequest) { // Kolla om denna webbläsaren har ett XMLHttpRequest objekt?
        AJAX=new XMLHttpRequest(); // Om ja! -- Ladda det.
     } else { // Nej!, Försök skapa det på Microsofts sätt.
        AJAX=new ActiveXObject("Microsoft.XMLHTTP"); // Okej, då gör vi det med ActiveX
     } // Klart.
     if (AJAX==null) { // Om vi inte kunde skapa vårt AJAX objekt...
        alert("Din läsare stöder inte AJAX."); // Felmeddelande.                                               
        return false // Retunera false, vi misslyckades.
     }
     AJAX.onreadystatechange = function() { // När webbläsaren har den efterfrågade informationen.
        if (AJAX.readyState==4 || AJAX.readyState=="complete") // Kolla om det är helt klart.
           if(handleXML) eval(handleXML+"(callback(AJAX.responseText, AJAX.status, id),id)"); // Skicka vidare informationen för bearbetning.
           else callback(AJAX.responseText, AJAX.status, id);
				else document.getElementById(id).innerHTML = 'Laddar...<br />'; 
     }
     var url=openThis; // Detta är adressen vi vill öppna.
     AJAX.open("GET", url, true); // Öppna adressen.
     AJAX.send(null); // Skicka en förfrågan.
}

function print(xmlDoc,id) {
	var printComments="";
	for(i=0;i<xmlDoc.getElementsByTagName("title").length;i++) {
		if(i==1) printComments+='<img src="img/dot_h2.gif" width="4" height="6"> <a href="" onClick="return showHide(\'subcom'+id+'\');">Visa alla inlägg</a><div id="subcom'+id+'" style="display:none;">';
		printComments+='<div style="margin: 5px 0 5px 0;"><a href="" onClick="if(document.getElementById(\'comment'+id+'-'+i+'\').style.display==\'none\') document.getElementById(\'comment'+id+'-'+i+'\').style.display=\'\'; else document.getElementById(\'comment'+id+'-'+i+'\').style.display=\'none\'; return false;"><strong>'+xmlDoc.getElementsByTagName("title")[i].childNodes[0].nodeValue;
		printComments+="</strong> - ("+(xmlDoc.getElementsByTagName("name")[i].childNodes[0]?xmlDoc.getElementsByTagName("name")[i].childNodes[0].nodeValue:"-")+") ";
		printComments+=xmlDoc.getElementsByTagName("date")[i].childNodes[0].nodeValue+"</a>";
		printComments+='<p id="comment'+id+'-'+i+'" style="display:none;margin:0px;">'+nl2br(xmlDoc.getElementsByTagName("comment")[i].childNodes[0].nodeValue)+'</p></div>';
	}
	if(i>0) printComments+='</div>';
	document.getElementById(id).innerHTML=printComments;
}

function nl2br(str) {
   return str.replace(/\\n/g, "<br />");
}

function get(obj,id) {
	var poststr = "article=" + encodeURI( document.getElementById("article"+id).value ) +
	"&title=" + encodeURI( document.getElementById("title"+id).value.replace(/&/g,"OchO") ) +
	"&name=" + encodeURI( document.getElementById("name"+id).value ) +
	"&comment=" + encodeURI( document.getElementById("comment"+id).value.replace(/&/g,"OchO") );
	ajaxRequest('/ajax/chat.php?'+poststr, 'Comments'+id,'print');
}

function printComments(id) {
	document.write('<h3 style="margin: 10px 0 5px 0;background:url(/ajax/chat.gif) 0px 2px no-repeat; padding:0 0 0em 20px; display:block;">Inlägg till artikeln</h3>\n');
	document.write('<div id="Comments'+id+'" style="margin-bottom: 5px;"></div>\n');
	document.write('<img src="/img/dot_h2.gif" width="4" height="6"> <a href="" onClick="return showHide(\'newcomment'+id+'\');">Skriv ett inlägg</a>\n');
	document.write('<div id="newcomment'+id+'" style="display:none;">');
	document.write('<form name="myform'+id+'" id="myform'+id+'">\n');
	document.write('<input type="hidden" value="'+id+'" name="article'+id+'" id="article'+id+'" /><br />\n');
	document.write('<table cellspacing="0" cellpadding="0" border="0">\n');
	document.write('<tbody>\n');
	document.write('	<tr><td width="120"><label for="title'+id+'"><strong>Rubrik:</strong> *</label></td><td><input type="text" value="" class="iform" name="title'+id+'" id="title'+id+'" size="50" /></td></tr>\n');
	document.write('	<tr valign="top"><td><label for="comment'+id+'"><strong>Kommentar:</strong> *</label></td><td><textarea id="comment'+id+'" name="comment'+id+'" class="iform" cols="65"></textarea></td></tr>\n');
	document.write('	<tr><td><label for="name'+id+'"><strong>Signatur:</strong> *</label></td><td><input type="text" value="" class="iform" name="name'+id+'" id="name'+id+'" size="50" /></td></tr>\n');
	document.write('</tbody>\n');
	document.write('</table>\n');
	document.write('<br>\n');
	document.write('<p><input type="button" alt="Submit" name="button" value="Publicera" onclick="javascript:get(this.parentNode,\''+id+'\');" /></p>\n');
	document.write('</form>\n');
	document.write('</div>');
	ajaxRequest('/ajax/chat.php?article='+id, 'Comments'+id,'print');
}

function showHide(id) {
	if(document.getElementById(id).style.display=="none")
		document.getElementById(id).style.display="";
	else
		document.getElementById(id).style.display="none";
	return false;
}