 var text  = new Array();
 var objDrag = null;
 var mouseX   = 0;
 var mouseY   = 0;
 var offX = 0;
 var offY = 0;
 var posX = 0;
 var posY = 0;
 var parH = 0;
 var parW = 0;
 var objH = 0;
 var objW = 0;
 var neu = 0;
 var updatePic = false;
 var countText = 0;
 var onUpdate = 0;
 var downloadcard = false;

 function newText(form){

  if(document.getElementById('new_text').value != ''){
   neu = text.length;
   text[neu] = new Array;
   text[neu][0] = document.getElementById('new_text').value.replace(/&/g,'-amp;'); // Text
   if(form == 0){
     text[neu][1] = document.getElementById('text_x').value; //Textposition in x-Richtung
     text[neu][2] = document.getElementById('text_y').value; //Textposition in y-Richtung
   }else if(form == 1){
     text[neu][1] = 300;
     text[neu][2] = 200;
   }
   text[neu][3] = document.getElementById('font_name').value; //Font-Name
   text[neu][4] = document.getElementById('font_size').value; //Font-Size
   text[neu][5] = document.getElementById('text_r').value; //Textfarbe: Rotanteil
   text[neu][6] = document.getElementById('text_g').value; //Textfarbe: Grünanteil
   text[neu][7] = document.getElementById('text_b').value; //Textfarbe: Blauanteil

   updatePic = false;
   printText(neu,true);
   countText++;
   clearTextfields();
  }
 }


 function setImage(rx){ // siehe editor_functions.js ,imageTextUrl
   //   document.getElementById('description').innerHTML = "<br>";
   xmlHttp[rx].onreadystatechange = function(){
     if (xmlHttp[rx].readyState == 4){
       imageTextUrl = xmlHttp[rx].responseText;
       var ffzusatz = (IE) ? "" :  "return false;" ;
       if(updatePic){
         i = "textn"+id;
         document.getElementById(i).src        = imageTextUrl;
         document.getElementById(i).style.left = text[id][1]+'px';
         document.getElementById(i).style.top  = text[id][2]+'px';
         document.getElementById(i).alt        = text[id][0];
       }else{
         document.getElementById('image_div').innerHTML = document.getElementById('image_div').innerHTML + '<img  src="'+imageTextUrl+'" id="textn'+id+'" onMouseUp="stopDrag(this)" onMouseDown="startDrag(this);'+ffzusatz+'" class="imageText" style="left:'+text[id][1]+'px;top:'+text[id][2]+'px;" alt="'+text[id][0]+'">'
       }
     }
   }
}



 function printText(i,bool){
   if(bool){
     var url = "action1.php?action=makeText&text=" + text[i][0] + "&font_name=" + text[i][3] + "&font_size=" + text[i][4] + "&r=" + text[i][5] + "&g=" +text[i][6]+ "&b=" + text[i][7] + "&PHPSESSID=" + sessid + "&picid="+i;
     jsrequest(url,true,i);
   }else{
     // Texte festsetzen (für immer)
     if(countText > 0){
       onUpdate = text.length;
       downloadcard = true;
       document.getElementById('downloadCardButton').style.display = 'none';
       document.getElementById('downloadStatus').style.display = 'block';

       for(var y=0;y<text.length;y++){

         var last = false;
         if(text[y] != undefined){
           add_text(text[y][0],text[y][3],text[y][4],text[y][1],text[y][2],text[y][5],text[y][6],text[y][7],last);
         }else{
          onUpdate--;
          if(onUpdate < 1) goToDownload();
         }
       }
     }else{
       goToDownload();
     }
   }
 }

 function goToDownload(){
    window.location.href = "download.php?PHPSESSID="+sessid+"&image_id="+imageID+"&counttext="+countText;
 }

 function showDownloadProgress(restOfTexts){
  var dlpb = Math.round((500/restOfTexts));
  document.getElementById('downloadProgressBar').style.width = dlpb+"px";
 }                      /*downloadProgressBar*/

 function setChangeText(i){

   document.getElementById('add_text').style.display = 'inline';

   document.getElementById('changeTextID').value = i;
   document.getElementById('new_text').value = text[i][0].replace(/-amp;/g,'&');
   document.getElementById('btext_x').value = text[i][1];
   document.getElementById('btext_y').value = text[i][2];
   document.getElementById('font_name').value = text[i][3];
   document.getElementById('font_size').value = text[i][4];
   document.getElementById('text_r').value = text[i][5];
   document.getElementById('text_g').value = text[i][6];
   document.getElementById('text_b').value = text[i][7];

   document.getElementById('posEditText').style.display = 'inline';
   document.getElementById('posNewText').style.display = 'none';

   document.getElementById('deleteButton').style.display = 'inline';
   document.getElementById('editButton').style.display = 'inline';
   document.getElementById('newTextByEdit').style.display = 'inline';
   document.getElementById('newTextButton').style.display = 'none';

   document.getElementById('editNotice').style.display = 'block';

 }

 function saveChangeText(){

   updatePic = true;
   i = document.getElementById('changeTextID').value;

   text[i][0] = document.getElementById('new_text').value.replace(/&/g,'-amp;'); // Text
   text[i][1] = document.getElementById('btext_x').value; //Textposition in x-Richtung
   text[i][2] = document.getElementById('btext_y').value; //Textposition in y-Richtung
   text[i][3] = document.getElementById('font_name').value; //Font-Name
   text[i][4] = document.getElementById('font_size').value; //Font-Size
   text[i][5] = document.getElementById('text_r').value; //Textfarbe: Rotanteil
   text[i][6] = document.getElementById('text_g').value; //Textfarbe: Grünanteil
   text[i][7] = document.getElementById('text_b').value; //Textfarbe: Blauanteil

   printText(i,true);
   clearTextfields();

 }

 function deleteText(){
   id =  document.getElementById('changeTextID').value;
   delete(text[id]);
   countText--;
   document.getElementById('textn'+id).style.display = 'none';

   clearTextfields();

 }

 function clearTextfields(){

   document.getElementById('changeTextID').value = -1;
   document.getElementById('new_text').value = "";
   document.getElementById('text_x').value = "0";
   document.getElementById('text_y').value = "0";
   document.getElementById('btext_x').value = "";
   document.getElementById('btext_y').value = "";
   document.getElementById('font_name').value = "";
   document.getElementById('font_size').value = "";
   document.getElementById('text_r').value = "";
   document.getElementById('text_g').value = "";
   document.getElementById('text_b').value = "";

   document.getElementById('posEditText').style.display = 'none';
   document.getElementById('posNewText').style.display = 'inline';

   document.getElementById('deleteButton').style.display = 'none';
   document.getElementById('editButton').style.display = 'none';
   document.getElementById('newTextByEdit').style.display = 'none';
   document.getElementById('newTextButton').style.display = 'inline';

   document.getElementById('editNotice').style.display = 'none';

 }

 // Drag & Drop-Funktion

  // Browserweiche
  DOM = document.getElementById&&!IE;

  function init(objekt){
    document.onmousemove = doDrag;
    parH = objekt.offsetHeight;
    parW = objekt.offsetWidth;
  }

  function startDrag(objElem) {
    objDrag = objElem;

    offX = mouseX - objDrag.offsetLeft;
    offY = mouseY - objDrag.offsetTop;

  }

  function doDrag(ereignis) {

    if(ereignis && ereignis.preventDefault) ereignis.preventDefault();

    mouseX = (IE) ? window.event.clientX : ereignis.pageX;
    mouseY = (IE) ? window.event.clientY : ereignis.pageY;

    if (objDrag != null) {

      objW = objDrag.offsetWidth;
      objH = objDrag.offsetHeight;

      posX = (mouseX - offX);
      posY = (mouseY - offY);

      if(posX >= 0){
         if((posX+objW) <= parW){
           objDrag.style.left = posX + "px";
         }
      }

      if(posY >= 0){
         if((posY+objH) <= parH){
           objDrag.style.top = posY + "px";
         }
      }

    }

    return false;
  }

  function stopDrag(objElem) {
    objDrag = objElem;
    tid = objDrag.id.substr(5);
    text[tid][1] = parseInt(objDrag.style.left);
    text[tid][2] = parseInt(objDrag.style.top);
    objDrag = null;
    setChangeText(tid);
  }