// setRequest ausgerufen in encode und edit3 , sowie rcontent 
// aus encode: 
//    $slidetext='<a href="#" 
// onClick="setRequest(\'03\', 2,\'wsc72331519/impressionen/\','.$nr.')">
// <img id="Slideshow" style="border:0; display: block; margin-left: auto; 
// margin-right: auto;" src="" alt="Slideshow" /></a>'; 

	var request = false;

function WT() {
Tage = new Array("So","Mo","Di","Mi","Do","Fr","Sa");
   xdate=document.getElementById('termin').value; 
   month=parseInt(xdate.substr(3,2))-1;
   zeit = new Date(xdate.substr(6,4),month,xdate.substr(0,2),5,0); 
   document.getElementById('Wochentag').innerHTML = Tage[zeit.getDay()];
} 
function URLxEncode(url) { 
   url= url.replace(/\\/g, "\\\\");
   var url2=encodeURIComponent(url).replace(/\\+/g, "%2B");
   return (url2);
} 

function setRequest(activate,option,directory,nr,ziel) {
		// Request erzeugen
		if (window.XMLHttpRequest) {
			request = new XMLHttpRequest(); // Mozilla, Safari, Opera
		} else if (window.ActiveXObject) {
			try {
				request = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
			} catch (e) {
				try {
					request = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
				} catch (e) {}
			}
		}
		
		if (!request) {
			alert("Kann keine XMLHTTP-Instanz erzeugen");
			return false;
		} else {
//			var url = "wsc72331519/overlay/ajaxput.php";
			var url = "wsc72331519/prg/ajaxput.php";

// Uebergabe: activate,option,directory,nr 
// Parameter: 
// request.send("name="+value+"&option="+option+"&directory="+directory+"&nr="+nr+"&user="+user);

// document.getElementById('source_'+id).innerHTML;
// document.getElementById('option_0'+option).innerHTML;

// prov:
//   user="xuser";
   if (nr==0) { nr=document.getElementById("Slideshow").name; }

			// Name auslesen
			var value = "dummy1";
			var value = activate;
			var name = activate;
			// Option auslesen
			var infotext = "dummy2"; 
                  var content = ""; 
                  if (option==9) { 
                     content=URLxEncode(document.getElementById("tarea").value); 
                  }

			request.open('post', url, true);
			request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			request.send("name="+activate+"&option="+option+"&directory="+directory+"&nr="+nr+"&user="+user+"&content="+content); 
			request.onreadystatechange = function() {
				interpretRequest(infotext,activate,option,directory,nr,ziel);
			}; 
		}
	}

	function interpretRequest(infotext,activate,option,directory,nr,ziel) {

			var working = "wsc72331519/icons/status_auto.gif";

// alertText="";
		switch (request.readyState) {
			// wenn der readyState 4 und der request.status 200 ist, dann ist alles korrekt gelaufen
			case 4:
					if (request.status != 200) {
						alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+request.status);
					} else {
// test: 

						// Antwort des Servers -> als XML-Dokument
						var xmlDoc		= request.responseXML;
						// Name aus dem XML-Dokument herauslesen
						var newname		= xmlDoc.getElementsByTagName('newname')[0].getAttribute('name');
						// Bildurl aus dem XML-Dokument herauslesen
						var imageurl	= xmlDoc.getElementsByTagName('newname')[0].getAttribute('image');
						// Alternativtext aus dem XML-Dokument herauslesen
						var alternate	= xmlDoc.getElementsByTagName('newname')[0].getAttribute('alternate');
// var alertText="1"; 
//						var alertText	= xmlDoc.getElementsByTagName('alert')[0].childNodes[0].nodeValue;
//						var alertText	= xmlDoc.getElementsByTagName('alert')[0].nodeValue;
						var alertText	= xmlDoc.getElementsByTagName('alert')[0].childNodes[0].nodeValue;
						// Bild erstellen
						var image		= "<img src=\""+imageurl+"\" alt=\""+alternate+"\" />";
		switch (option) {
			case 0:
            alert("case 0"); 
            alert(request.responseText);
// xxx="activate="; 
// xxx="id="+id+" option="+option; 
xxx="activate="+activate+" option="+option+" directory="+directory+" nr="+nr+" ziel="+ziel; 
            alert(xxx); 
//            alert("directory="+directory+" nr="+nr+" ziel="+ziel); 
					break;
			case 9:
			case 1:
// if(typeof document.ziel =='undefined'){ alert ("Ziel undefiniert!"); } else { 
   document.getElementById(ziel).innerHTML = xmlDoc.getElementsByTagName('content')[0].childNodes[1].nodeValue; 
   objektindex=0;ausgabe='';toggleNodes(document.getElementsByTagName('body')[0],1); 
//    }
//            if (alertText!="\r\nok\r\n") alert(alertText);
            if (alertText!="ok") alert(alertText);
//            if (alertText!=null) alert(alertText);
 var statusText	= xmlDoc.getElementsByTagName('status')[0].childNodes[0].nodeValue;

document.getElementById("statustext").title = "Status "+ statusText; 
					break;
			case 2:
            alert(request.responseText);
   document.getElementById("rimage").title = alternate;
   document.getElementById("rimage").src = imageurl;
					break;
			case 3:
   document.getElementById("rimage").title = alternate;
   document.getElementById("rimage").src = imageurl;
					break;
			case 5:  
   document.getElementById("Slideshow").title = alternate;
   document.getElementById("Slideshow").src = imageurl;
   document.getElementById("Slideshow").name = xmlDoc.getElementsByTagName('newname')[0].getAttribute('next');
					break;
			case 4:
   document.getElementById("rimage").title = alternate;
var next = xmlDoc.getElementsByTagName('newname')[0].getAttribute('next');
var  act=next-1; n1=""; if (next<100) n1="0"; if (next<10) n1="00"; 
var  prev=act-1; p1=""; if (prev<100) p1="0"; if (prev<10) p1="00";
  next="diaz-bone_2008_p"+n1+next+".png";
  prev="diaz-bone_2008_p"+p1+prev+".png";

   document.getElementById("bookpage").src = "/work/BookPages/"+alternate;
//   document.getElementById("next").href = alternate;
//   document.getElementById("next").href = "javascript:setRequest('diaz-bone_2008_p018.png', 4)";
//   document.getElementById("next").href = "javascript:setRequest('"+alternate+"', 4)";
   document.getElementById("next").href = "javascript:setRequest('"+next+"', 4)";
   document.getElementById("prev").href = "javascript:setRequest('"+prev+"', 4)";
   document.getElementById("pgnr").innerHTML=act; 
// $pg1='diaz-bone_2008_p020.png';
// <a id="next" href="#" onClick="setRequest(\''.$pg1.'\', 4)">##</a>
//   document.getElementById("next").onClick = "setRequest(\'"+alternate+"'\', 4)";
//   document.getElementById("next").onClick = "setRequest('"+alternate+"', 4)";
//   document.getElementById("next").onClick = "setRequest('diaz-bone_2008_p018.png', 4)";
					break;
			default:   document.getElementById("Slideshow").src = imageurl;
}
// Ende option 
					}
// Ende Status 200 
					break;
			default:    document.getElementById("status").src = working; 
					break;
		}
// Ende switch 
	}
// Ende interpretRequest 


   function getForm(obj) {
      var getstr = "?";
      for (i=0; i<obj.getElementsByTagName("input").length; i++) {
            if (obj.getElementsByTagName("input")[i].type == "text") {
               getstr += obj.getElementsByTagName("input")[i].name + "=" + 
                       obj.getElementsByTagName("input")[i].value + "&";
            }
            if (obj.getElementsByTagName("input")[i].type == "hidden") {
               getstr += obj.getElementsByTagName("input")[i].name + "=" + 
                       obj.getElementsByTagName("input")[i].value + "&";
            }
            if (obj.getElementsByTagName("input")[i].type == "checkbox") {
               if (obj.getElementsByTagName("input")[i].checked) {
                  getstr += obj.getElementsByTagName("input")[i].name + "=" + 
                       obj.getElementsByTagName("input")[i].value + "&";
               } else {
                  getstr += obj.getElementsByTagName("input")[i].name + "=&";
               }
            }
            if (obj.getElementsByTagName("input")[i].type == "radio") {
               if (obj.getElementsByTagName("input")[i].checked) {
                  getstr += obj.getElementsByTagName("input")[i].name + "=" + 
                       obj.getElementsByTagName("input")[i].value + "&";
               }
         }  
         if (obj.getElementsByTagName("input")[i].tagName == "SELECT") {
            var sel = obj.getElementsByTagName("input")[i];
            getstr += sel.name + "=" + sel.options[sel.selectedIndex].value + "&";
         }
      }
      for (i=0; i<obj.getElementsByTagName("textarea").length; i++) {
           var sel = obj.getElementsByTagName("textarea")[i];
               getstr += sel.name + "=" + URLxEncode(sel.value) + "&";
      }
      return(getstr); 
   }

var max_objekte=100000; // Anzahl der maximal zu auszugebenden Knoten
var objektindex=0; // Objektzähler
var ebene=1; // Beinhaltet während der Laufzeit die momentane Verschachtelungsebene
var ausgabe="";

function toggleThis (element) {
   ix=element.parentNode.parentNode;    // UL 
   ix=element.parentNode;               // LI 
   if( ix.hasChildNodes() ) {
      for(var j = 0; j < ix.childNodes.length; j++) {
         if (ix.childNodes[j].tagName=="UL") { 
            if (ix.childNodes[j].style.display=="none") {
               ix.childNodes[j].style.display="block";
               element.innerHTML="&laquo;"; 
            } else {
               ix.childNodes[j].style.display="none";
               element.innerHTML="&raquo;"; 
            }
         }
      }
   }
}

function toggleBlock (element) {
   ix=element.parentNode.parentNode;    // UL 
   ix=element.parentNode;               // LI 
   if( ix.hasChildNodes() ) {
      for(var j = 0; j < ix.childNodes.length; j++) {
            if (ix.childNodes[j].tagName=="A") { 
               last_a=ix.childNodes[j];
            } 
         if (ix.childNodes[j].tagName=="UL") { 
            if (ix.childNodes[j].style.display=="none") {
               ix.childNodes[j].style.display="block";
//               element.innerHTML="&laquo;"; 
               last_a.innerHTML="&laquo;"; 
            } else {
               ix.childNodes[j].style.display="none";
//               element.innerHTML="&raquo;"; 
               last_a.innerHTML="&raquo;"; 
            }
         }
      }
   }
}

function toggleNodes (knoten,aufzu) {
 objektindex++;
 ausgabe+="|"; for (k=1; k<ebene; k++) ausgabe+="   |";
 ausgabe+=("- Typ: ["+knoten.nodeType+"] Name: [<b>"+knoten.nodeName+"</b>] Wert: [<b>"+knoten.nodeValue+"</b>] Unterknoten: ["+knoten.childNodes.length+"]\n");

// 0: beide, 1:alle zu, 2: alle auf 

      if (knoten.tagName=="UL") { 
ix=knoten.parentNode;
if (ix.hasChildNodes) { 
//   alert (ix.childNodes[0].className); 
         if (ix.childNodes[0].className=="collapse1") { 
            if (knoten.style.display=="none") {
               if (aufzu!=1) { 
                  knoten.style.display="block";
			ix.childNodes[0].innerHTML='&laquo;';
                  }
            } else {
//   alert (ix.childNodes[0].innerHTML); 
               if (aufzu!=2) { 
                  knoten.style.display="none";
			ix.childNodes[0].innerHTML='&raquo;';
               }
            }
         }
      }
   } 

 if (knoten.hasChildNodes()) {
  ebene++;
  for ( var i=0; i<knoten.childNodes.length; i++) {
   knotenneu=knoten.childNodes[i];
   if (objektindex<max_objekte) toggleNodes(knotenneu,aufzu); // Rekursion
  }
  ebene--;
 }
}
