
var active;
function timer(id){
	document.getElementById(id).style.display = "block";
	if(active){
	 clearTimeout(active);
     }
	active = window.setTimeout(function(){changeStatus(id);},1000);
}
   
   
function submitAForm(url,content,typ,urlpara,theform){
	
	tform = document.getElementById(theform);
	
var formval = makeForm(tform);

urlpara = urlpara+'&'+formval;
request(url,content,typ,urlpara);

}


function makeForm(fobj){

var str = "";

	for(var i = 0;i < fobj.elements.length;i++){
		switch(fobj.elements[i].type){
			
			
			case "checkbox":
				str += fobj.elements[i].name+"="+escape(fobj.elements[i].checked)+"&";
			break;
			
			case "radio":
				if(fobj.elements[i].checked == true){
				str += fobj.elements[i].name+"="+escape(fobj.elements[i].value)+"&";
				}
			break;
			
			case "button":
			case "hidden":
			case "password":
			
			case "textarea":
			case "text":
				str += fobj.elements[i].name+"="+escape(fobj.elements[i].value)+"&";
			break;
			

			case "select-one":
				str += fobj.elements[i].name+"="+fobj.elements[i].options[fobj.elements[i].selectedIndex].value+"&";
			break;
		}
	}
	
	str = str.substr(0,(str.length - 1));

	return str;

}
    
    
    
   
function requestEditor(url,editorName){
	
	//daten sammeln
	editordata = document.getElementById(editorName).contentWindow.document.body.innerHTML;
	editordata = escape(editordata); 
	
	name = 'width'+editorName; 
	data = document.getElementById(name).value; 
	data = encodeURIComponent(data);
	
	urlPara = '&editorwidth='+data+'&partid='+editorName;
	
	//request absetzen
	addRequest(url,editordata,'editordata',urlPara);
}




function requestTitel(url,formname,titelfeld,idfeld){
	
	//daten sammeln
	var data = document.forms['titeldata'].elements[titelfeld].value;
	//data = encodeURIComponent(data);
	
	var pageid = document.forms[formname].elements[idfeld].value;
	pageid = encodeURIComponent(pageid);
	
	urlPara = '&pageid='+pageid;
	
	//request absetzen
	addRequest(url,data,'titeldata',urlPara);
	addRequest('responseStatic.php','','showMenu','pid='+pageid);
}






var element = false;
var outerQueue = new Array();
var http_request = false;


function addRequest(url,content,typ,urlPara) {
	var innerQueue = new Array();
	innerQueue[0] = url;
	innerQueue[1] = content;
	innerQueue[2] = typ;
	innerQueue[3] = urlPara;
	
	outerQueue[outerQueue.length] = innerQueue;
}



var globWait = "";
function doOuterQueue(wait){
	globWait = 'wait'; 
	document.getElementById(globWait).innerHTML = " ";
	document.getElementById(globWait).style.display = "block";
	
	if(outerQueue.length > 0){ 
	var doQueue = new Array();
	doQueue = outerQueue.shift();
	
	request(doQueue[0],doQueue[1],doQueue[2],doQueue[3]);
	}
	else{
		changeStatus(globWait);
	}
}




function request(url,content,typ,urlPara) {
 http_request = false;
	if(window.XMLHttpRequest) { //Mozilla, Safari
		http_request = new XMLHttpRequest();
		if(http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml; charset=utf-8');
		}
	}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('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
		return false;
	} 
	http_request.onreadystatechange = alertInhalt; 
	http_request.open('POST', url, true);
	http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	http_request.send('ajrequest='+content+'&ajtyp='+typ+'&c=c&'+urlPara);
	
}


function alertInhalt() {

	if(http_request.readyState == 4){
		if(http_request.status == 200){
			response = http_request.responseXML.documentElement; 
		 if(results != ''){
			var results = response.getElementsByTagName("result"); 
		      for (var i = 0; i < results.length; i++) {
		         var resultsSet = results[i];
		         var currentInnerDiv;
		         for (var j = 0; j < resultsSet.childNodes.length; j++) {
		            with (resultsSet.childNodes[j]) {
		              if (nodeName == "noReturn") {
		              		break;
		              }  else if (nodeName == "divId") {
		                  var divId = firstChild.nodeValue;
		               }  else if (nodeName == "register") {
		               		var body = document.getElementsByTagName("body")[0];
						    var script = document.createElement('div');
						    script.id = 'ex';
						    body.appendChild(script);

		               } else if (nodeName == "divStyleBackgroundColor") {
		                  document.getElementById(divId).style.backgroundColor = firstChild.nodeValue;
		               } else if (nodeName == "divStyleBackgroundImage") {
		                  document.getElementById(divId).style.background = "url('"+firstChild.nodeValue+"')";
		               } else if (nodeName == "divStyleDisyplay") {
		                  document.getElementById(divId).style.display = firstChild.nodeValue;
		               } else if (nodeName == "divStyleBorderColor") {
		                  document.getElementById(divId).style.borderColor = firstChild.nodeValue;
		               } else if (nodeName == "divStyleBorderWidth") {
		                  document.getElementById(divId).style.borderWidth = firstChild.nodeValue;
		                  document.getElementById(divId).style.borderStyle = 'solid';
		               } else if (nodeName == "divStyleWidth") { 
		                  document.getElementById(divId).style.width = firstChild.nodeValue;
		               } else if (nodeName == "divStyleFontSize") {
		                  document.getElementById(divId).style.fontSize = firstChild.nodeValue;
		               } else if (nodeName == "divStyleFontColor") {
		                  document.getElementById(divId).style.fontStyle = firstChild.nodeValue;
				       } else if (nodeName == "divInnerStart") {
				          document.getElementById(divId).innerHTML = firstChild.nodeValue;
				       } else if (nodeName == "hide") { 
		                  timer(divId);
		               }
		            }
		         }
		       }
		   }
		}	
		else{
		alert('Bei dem Request ist ein Problem aufgetreten.');
		}
	doOuterQueue(globWait);
	}

}



function decode_utf8(utftext) {
             var plaintext = ""; var i=0; var c=c1=c2=0;
             // while-Schleife, weil einige Zeichen uebersprungen werden
             while(i<utftext.length)
                 {
                c = utftext.charCodeAt(i);
                if (c<128) {
                     plaintext += String.fromCharCode(c);
                     i++;}
                 else if((c>191) && (c<224)) {
                     c2 = utftext.charCodeAt(i+1);
                     plaintext += String.fromCharCode(((c&31)<<6) | (c2&63));
                     i+=2;}
                 else {
                     c2 = utftext.charCodeAt(i+1); c3 = utftext.charCodeAt(i+2);
                     plaintext += String.fromCharCode(((c&15)<<12) | ((c2&63)<<6) | (c3&63));
                     i+=3;}
                 }
             return plaintext;
         }
