// JavaScript Document
var http_request = false;
var sendbutton;
var sendbuttenmessage = '';

function trim(text) {
 while(text.charAt(0)==" ") { text=text.substring(1,text.length); }
 while(text.charAt(text.length-1)==" ") { text=text.substring(0,text.length-1); }
 return text;
}

function makePOSTRequest(url, parameters) {
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_request = new XMLHttpRequest();
	 if (http_request.overrideMimeType) {
		// set type accordingly to anticipated content type
		//http_request.overrideMimeType('text/xml');
		http_request.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_request) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }
  
  http_request.onreadystatechange = alertContents;
  http_request.open('POST', url, true);
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request.setRequestHeader("Content-length", parameters.length);
  http_request.setRequestHeader("Connection", "close");
  http_request.send(parameters);
}

function alertContents() {
  if (http_request.readyState == 4) {
	 if (http_request.status == 200) {
		result = http_request.responseText;
		str = '';

		var parameter = result.split("_");
		switch(trim(parameter[0]))
		{
			case "REMOVE": 
				result = 'notext';
				for (j = 1; j < parameter.length; j++) {
					document.getElementById(parameter[j]).style.display = 'none';
				}
			break;
			case "RELOAD":
				result = 'notext';
				location.reload();
			break;
			case "HTML":
				result = 'notext';
				var div = parameter[1];
				var html = '';
				for (j = 2; j < parameter.length; j++)
					html = html + parameter[j];
					
				changedivhtml(div, html);
			break;
		}
		
		switch(result)
		{
			case "notext": break;
			
			// globale Fehler
			case "ERROR_MISSING_ACTION": str = 'Es ist ein Skriptfehler aufgetreten. Bitte den Administrator melden!';break;
			case "ERROR_NO_USER": str = 'Du bist nicht angemeldet!';break;
			case "ERROR_FALSE_ACTION": str = 'Aktion wurde vom Skript nicht verstanden!';break;
			case "ERROR_MISSING_DATA": str = 'Einige Daten fehlen!';break;
			case "ERROR_USER_NOT_EXISTS": str = 'Mitglied existiert nicht!';break;			
			
			default: str = "Unbekannter Fehler: "+result;
		}
		sendbutton.disabled = false;
		sendbutton.value = sendbuttenmessage;
		if(str == '') return false;
		alert(str);	  
	 } else {
		alert('There was a problem with the request.');
	 }
  }
}

function change2load( div )
{
	var image = '<div class="loading"><\/div>';
	changedivhtml (div, image);
}

function changedivhtml( div, text )
{
	var IE = (document.all) ? 1 : 0;
	var DOM = 0; 
	if (parseInt(navigator.appVersion) >=5) {DOM=1};

	if (DOM) {
		if(document.getElementById(div))
		{
			document.getElementById(div).innerHTML = text;
		}
	}  else if(IE) {
		document.all[div].innerHTML = text;
	}
}

function get(obj) { 
  sendbutton = obj.postcomment;
  sendbuttenmessage = sendbutton.value;
  sendbutton.disabled = true;
  sendbutton.value = 'Bitte warten...';
  
  //iconid
  var poststr = "k=" + encodeURI( obj.k.value ) + 
				"&subkati=" + encodeURI( obj.subkati.value ) +
				"&kid=" + encodeURI( obj.kid.value ) + 
				"&topic=" + encodeURI( obj.topic.value ) +
				"&comment=" + encodeURI( obj.comment.value );
				
  makePOSTRequest('/scripts/ajaxcomment.php', poststr);
  obj.comment.value = '';
}

var postmaxchars = 10000;
function validate(theform) {
 if (theform.comment.value=="") {
  alert("Bitte geben Sie einen Kommentar ein!");
  return false;
 }
 else return true;
}
