var http = getHTTPObject();
 
function getHTTPObject(){
    var xmlHttp = false;

    // mozi,opera,ie7
    if(typeof XMLHttpRequest != 'undefined') {
        xmlHttp = new XMLHttpRequest();
    }

    if(!xmlHttp) {
        //ie6andolder
        try {
            xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(e) {
            try {
                xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
            } catch(e) {
                xmlHttp  = false;
            }
        }
    }

    return xmlHttp;
}

function doText(theURL,theID){
	var url = "ajax_" + theURL;
	var ID = theID;
 
  http.open("GET", url, true);
  http.onreadystatechange = function () { handleHttpResponse(ID); }
  http.send(null);
}

function wText(theURL,theID){
  var derText = document.getElementById('text').value;
  derText = derText.replace(/\n/g,"<br/>");
  var url = "ajax_" + theURL;
  url += "&text=" + derText;
  var ID = theID;
 
  http.open("GET", url, true);
  http.onreadystatechange = function () { handleHttpResponse(ID); }
 
  http.send(null);
}


function handleHttpResponse(theID){
	var ID = theID;

  if(http.readyState == 4){
    document.getElementById(ID).innerHTML = http.responseText;
  }
}
function leeren(theID){
	var ID = theID;

  if(http.readyState == 4){
    document.getElementById(ID).innerHTML = "";
  }
}

  //Das Objekt, das gerade bewegt wird.
  var dragobjekt = null;

  // Position, an der das Objekt angeklickt wurde.
  // relativ zur oberen, rechten Ecke des Objekts
  var dragx = 0;
  var dragy = 0;

  // Mausposition
  // relativ zur oberen, rechten Ecke des Fensters
  var posx = 0;
  var posy = 0;


  function draginit() {

   // Initialisierung der Überwachung der Events
    document.onmousemove = drag;
document.onmouseup = dragstop;
  }


  function dragstart(theID) {
     //Wird aufgerufen, wenn ein Objekt bewegt werden soll.
     //Parameter element: Das zu bewegende Objekt.

    dragobjekt = document.getElementById(theID);
    dragx = posx - dragobjekt.offsetLeft;
    dragy = posy - dragobjekt.offsetTop;
  }


  function dragstop() {
    //Wird aufgerufen, wenn ein Objekt nicht mehr bewegt werden soll.
    dragobjekt=null;

  }

function dragsave(theID,thePOS) {

    dragobjekt = document.getElementById(theID);
    dragx = dragobjekt.offsetLeft;
    dragy = dragobjekt.offsetTop;
    doText('saveposi.php?x='+dragx+'&y='+dragy+'&pos='+thePOS,'happy');

}

  function drag(ereignis) {
    //Wird aufgerufen, wenn die Maus bewegt wird und bewegt bei Bedarf das Objekt.
    posx = document.all ? window.event.clientX : ereignis.pageX;
    posy = document.all ? window.event.clientY : ereignis.pageY;
    if(dragobjekt != null) {
      dragobjekt.style.left = (posx - dragx) + "px";
      dragobjekt.style.top = (posy - dragy) + "px";
    }
  }