
var maxlen=new Array();
// Yodl-Lib
var timeoutspeed=10;

var SrX,SrY,oldSrX;


function getscreenres(){
   oldSrX=SrX;
   if (self.innerHeight){
      SrX=self.innerWidth;
      SrY=self.innerHeight;
   }else if (document.documentElement && document.documentElement.clientHeight){
      SrX = document.documentElement.clientWidth;
      SrY = document.documentElement.clientHeight;
   }else if (document.body){
      SrX=document.body.offsetWidth;
      SrY=document.body.offsetHeight;
   }
}


var scrOfX = 0, scrOfY = 0;
function getScrollXY() {

       if( typeof( window.pageYOffset ) == 'number' ) {
           //Netscape compliant
           scrOfY = window.pageYOffset;
           scrOfX = window.pageXOffset;
       } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
           //DOM compliant
           scrOfY = document.body.scrollTop;
           scrOfX = document.body.scrollLeft;
       } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
           //IE6 standards compliant mode
           scrOfY = document.documentElement.scrollTop;
           scrOfX = document.documentElement.scrollLeft;
       }
}

//Maus
var mX = 0;
var mY = 0;
var sL=0;
var sT=0;
var AnnehmenDassMausAusserhalbDesBrowsers =7;
function initmousemove(e){
    if (AnnehmenDassMausAusserhalbDesBrowsers==8 && typeof(e)=='undefined'){
                     mX=SrX+9;mY=SrY+9
    }else{
         /* mX,mY ->   MausX/Y
            sL,sT -> ScrollLeft/Top

         /* Liest die Mauskoordinaten mX und mY ein und prUEft, ob die Maus sich in einer der ViewAreas befindet oder nicht */
         //Mauskoordinaten auslesen:
         sL=document.body.scrollLeft;
         sT=document.body.scrollTop;
         if (IE) {
            mX = event.clientX + sL;
                  mY = event.clientY + sT;
         }else {
            mX = e.pageX;
            mY = e.pageY;
         }
         if (mX < 0){mX = 0;}
         if (mY < 0){mY = 0;}

         //In welchen view-Areas ist die Maus gerade?

            AnnehmenDassMausAusserhalbDesBrowsers=0; //Da Maus grad bewegt wurde.

   }

   ViewAreaCheckContact();
   ObjectOnMouseCheckContact();

}



function ObjectOnMouseCheckContact(){
   //Alle Objekte auf Mauskontakt prüfen und ggf ein Event feuern.

      /* zunächst alle Einträge der Arrays objectOnMouseOver und objectOnMouseOut in ein Array schmeißen und doppelte aussortieren
         -> es werden nur jene objekte geprüft, für die ein MouseOver/Out definiert ist.
         */


       for (check in objectOnMouseOver){
           ObjectOnMouseCheckOne(check);
       }
       for (check in objectOnMouseOut){
           ObjectOnMouseCheckOne(check);
       }


}

function ObjectOnMouseCheckOne(check){
            checkDeclare(check);
            if (objectVisible[check]!=0){
               if (objectHeight[check]+objectWidth[check]<2){
                  //Kein Height/width zum checken vorhanden:
                  alert ('Problem "ObjH/W-Lack@ID-'+check+'".\nBitte melden Sie dieses Problem umgehend per Mail an\nyodl.programmierung [at] thinklabs-ltd [dot] net');
               }else{

                  if (mX>objectposX[check] && mX<objectposX[check]+objectWidth[check] && mY    -5       >objectposY[check] && mY<objectposY[check]+objectHeight[check]){
                      MouseInObjectArea[check]=1;
                  }else{
                      MouseInObjectArea[check]=0;
                  }

                  if (MouseInObjectArea[check]!=oldMouseInObjectArea[check]){
                     //Event feuern:
                     if (oldMouseInObjectArea[check]==0){
                        setTimeout( objectOnMouseOver[check],0);
                     }else if (oldMouseInObjectArea[check]==1){
                              setTimeout( objectOnMouseOut[check],0);
                     }
                     oldMouseInObjectArea[check]=MouseInObjectArea[check];
                  }
               }
            }
}

function ViewAreaCheckContact(){

    //Alle View-Areas nacheinander neu auf Mauskontakt prUEfen
         for (var vn in ViewAreaX1){

             if (mX>ViewAreaX1[vn]+sL && mY    >ViewAreaY1[vn]+sT && mX<ViewAreaX2[vn]+sL && mY< ViewAreaY2[vn]+sT){
                MouseInViewArea[vn]=1;
             }else{
                    MouseInViewArea[vn]=0;
             }
             if (oldMouseInViewArea[vn]!=MouseInViewArea[vn]){//Bei verAEnderung (Maus: Rein / Raus) ne Function aufrufen


                if (vn=='rausarea'){
                          if (oldMouseInViewArea[vn]==0){
			    //Wenn maus neu in view-area kommt: raus-größe sicherstellen.
                              changeraussize();
                          }
                }

                //Extraabfrage: "HiddenWithoutMouse":

                if (ViewAreaHiddenWithoutMouse[vn]>0){
                   //-> Beim Verlassen UND Betreten alle Elemente refreshen (damit von hidden auf visible umgestellt wird und umgekehrt).
                   //-> Elemente finden, die zur ViewArea gehï¿½ren. und aufrufen, falls sie nicht eh schon laufen.

                   for (var elementname in objectposX){
                      //alert (elementname            +' - '+objectInWork[elementname] +' | '+objectViewArea[elementname] );
                      if (objectViewArea[elementname]==vn && objectInWork[elementname]==0){updateposition(elementname);}
                   }

                }
                oldMouseInViewArea[vn]=MouseInViewArea[vn];
             }
         }
}




//Objekt-Lib:
var objectDeclared = new Array();


var oldtransparenz = new Array();
var transparenz = new Array();
var solltransparenz = new Array();

var oldobjectVisible=new Array();
var objectVisible=new Array();

var objectInWork = new Array();

var objectOnMouseOver=new Array();  //Um dieses zu nutzen, muss objectHeight und objectWidth definiert worden sein.
var objectOnMouseOut =new Array();  //Um dieses zu nutzen, muss objectHeight und objectWidth definiert worden sein.

var oldMouseInObjectArea=new Array();
var MouseInObjectArea= new Array();

var objectposX = new Array();
var objectposY = new Array();

var objectvektorX = new Array();
var objectvektorY = new Array();

var objectsollposX = new Array();
var objectsollposY = new Array();
var oldobjectposX = new Array();
var oldobjectposY = new Array();

var objectWidth = new Array();             //Wird nur benötigt (und definiert), wenn interne OnMouseOver-Überwachung aktiv ist.
var objectHeight = new Array();            //Wird nur benötigt (und definiert), wenn interne OnMouseOver-Überwachung aktiv ist.


var objectfirstcall=new Array();

var objectViewArea=new Array();//zugeordnete ViewArea (Bereich in dem das Objekt angezeigt werden darf)

var oldobjectHidden=new Array();
var objectHidden=new Array();//Falls das Objekt auï¿½erhalb des Sichtbereichs ist, ist dieser Flag auf 1

//-- ViewAreas. Werden z.B. bei gings#() definiert/neu festgelegt.
var oldMouseInViewArea=new Array();
var MouseInViewArea=new Array();
var ViewAreaX1 =new Array();
var ViewAreaY1 =new Array();
var ViewAreaX2 =new Array();
var ViewAreaY2 =new Array();
var ViewAreaScrollX =new Array();
var ViewAreaScrollY =new Array();
var ViewAreaHiddenWithoutMouse=new Array();
function checkDeclare(tid){
     if (typeof(objectDeclared[tid])   =='undefined'){//Objekt deklarieren, wenns noch undeklariert ist.
         objectDeclared[tid]=1;

         if (typeof(objectViewArea[tid])   =='undefined'){objectViewArea[tid]='wholescreen';}

         if (typeof(oldobjectVisible[tid])   =='undefined'){oldobjectVisible[tid]=-123;}
         if (typeof(objectVisible[tid])   =='undefined'){objectVisible[tid]=0;}

         if (typeof(objectInWork[tid])   =='undefined'){objectInWork[tid]=0;}

         if (typeof(objectsollposX[tid])   =='undefined'){objectsollposX[tid]=0;}
         if (typeof(objectposX[tid])   =='undefined'){objectposX[tid]=0;}
         if (typeof(oldobjectposX[tid])   =='undefined'){oldobjectposX[tid]=0;}

         if (typeof(objectvektorX[tid])   =='undefined'){objectvektorX[tid]=1;}
         if (typeof(objectvektorY[tid])   =='undefined'){objectvektorY[tid]=1;}

         if (typeof(objectsollposY[tid])   =='undefined'){objectsollposY[tid]=0;}
         if (typeof(objectposY[tid])   =='undefined'){objectposY[tid]=0;}
         if (typeof(oldobjectposY[tid])   =='undefined'){oldobjectposY[tid]=0;}


         if (typeof(transparenz[tid])   =='undefined'){transparenz[tid]=2;}
         if (typeof(oldtransparenz[tid])=='undefined'){oldtransparenz[tid]=1;}
         if (typeof(solltransparenz[tid])=='undefined'){solltransparenz[tid]=100;}

         if (typeof(objectHidden[tid])   =='undefined'){objectHidden[tid]=0;}
         if (typeof(oldobjectHidden[tid])   =='undefined'){oldobjectHidden[tid]=0;}

         if (typeof(objectHeight[tid])   =='undefined'){objectHeight[tid]=0;}
         if (typeof(objectWidth[tid])   =='undefined'){objectWidth[tid]=0;}

         if (typeof(objectfirstcall[tid])   =='undefined'){objectfirstcall[tid]=1;}
         if (typeof(MouseInObjectArea[tid])  =='undefined'){MouseInObjectArea[tid]=-1;}
         if (typeof(oldMouseInObjectArea[tid])  =='undefined'){oldMouseInObjectArea[tid]=-1;}

     }
}
function adaptposition(tid){
         checkDeclare(tid);

         //Wenn die SollPosition auï¿½erhalb des Sichtbereichs liegt: das objekt schonmal unsichtbar dimmen und umgekehrt.
         if (objectsollposX[tid]>ViewAreaX1[objectViewArea[tid]] && objectsollposX<ViewAreaX2[objectViewArea[tid]] && objectsollposY[tid]>ViewAreaY1[objectViewArea[tid]] && objectsollposY[tid]<ViewAreaY2[objectViewArea[tid]] ){
                 objectHidden[tid]=0;
         }else{
                 objectHidden[tid]=1;
         }

         //ObjektpositionsAEnderungsroutine starten, falls sie nicht schon lAEuft (denn dann wuerden die AEnderungen sowieso gleich beruecksichtigt)
         if (objectInWork[tid]==0){updateposition(tid);}
}
function adapttransp(tid,twert){
         checkDeclare(tid);
         solltransparenz[tid]=twert;
         if (objectInWork[tid]==0){updateposition(tid);}//ObjekttransparenzsAEnderungsroutine starten, falls sie nicht schon lAEuft (denn dann wuerden die AEnderungen sowieso gleich beruecksichtigt)
}




function updateposition(tid){
   objectInWork[tid]=1;

//Position-Errechnung:
     //neue Position berechnen
         objectposX[tid]=objectposX[tid]+((objectsollposX[tid]-objectposX[tid])/3);
         objectposY[tid]=objectposY[tid]+((objectsollposY[tid]-objectposY[tid])/3);



    /*Wenns der ALLERerste aufruf des objekts ist, dann startet es bei der soll-position.
      So wird vermieden, dass beim Start der HTML alle objekte erstmal unterwegs sind, bis sie ihre position eingenommen haben.*/
   if (objectfirstcall[tid]==1){
         objectfirstcall[tid]=0;
         objectposX[tid]=objectsollposX[tid];
         objectposY[tid]=objectsollposY[tid];
      }



//Allgemein: Feststellen, ob Objekt im sichtbaren bereich oder nicht.
        if (objectposX[tid]>ViewAreaX1[objectViewArea[tid]] && objectposX[tid]<ViewAreaX2[objectViewArea[tid]]&& objectposY[tid]>ViewAreaY1[objectViewArea[tid]] && objectposY[tid]<ViewAreaY2[objectViewArea[tid]]){objectInViewArea=1;}else{objectInViewArea=0;}
        //alert (objectposX[tid]+'>'+ViewAreaX1[objectViewArea[tid]] +', '+ objectposX[tid]+'<'+ViewAreaX2[objectViewArea[tid]]+'  |  '+ objectposY[tid]+'>'+ViewAreaY1[objectViewArea[tid]] +', '+ objectposY[tid]+'<'+ViewAreaY2[objectViewArea[tid]]);
        //alert (tid+' in '+objectViewArea[tid]+' = '+objectInViewArea       );
//TRANSP-Errechnung:
         //Wenn ObjektSoll nicht auï¿½erhalb des Sichtbereichs (position) dann soll-transparenz nehmen. ansonsten ist die solltransparenz 0 (da das objekt unsichtbar sein soll)
         if (objectHidden[tid]==1 || objectInViewArea==0 ){sollt=0;}else{sollt=solltransparenz[tid]}
         //Oder wenn maus auï¿½erhalb der viewarea UND viewArea als ohne-maus-ausgeblendet definiert)
         if (MouseInViewArea[objectViewArea[tid]]==0){
            if (ViewAreaHiddenWithoutMouse[objectViewArea[tid]]==1){
                     if (solltransparenz[tid]<100){ //Nicht voll sichtbare Objekte werden dann ganz ausgeblendet.
                    sollt=0;
                }else{//Sichtbare sind nur noch halb zu sehen.
                     sollt=Math.round(sollt*2/3);
                }
            }else if (ViewAreaHiddenWithoutMouse[objectViewArea[tid]]==2){
                      sollt=0;//Bei Modus 2 wird IMMER ausgeblendet, wenn außerhalb der viewarea.
            }
         }


        /* Nur wenn in der view-area ist wird animiert. auï¿½erhalb wird sofort auf sollwert gesetzt, da das objekt im normalfall ausgeblendet sein soll.*/

        if (objectInViewArea==1){
        //   //alert (tid+':'+objectInViewArea+'  - '+objectposX[tid]+'/'+objectposY[tid]);
           transparenz[tid]=transparenz[tid]+Math.round((sollt-transparenz[tid])/3);
        }else{
           transparenz[tid]=sollt;
        }




//---------------------------
//Ausfuehrung:
//AEnderung uebernehmen: Transp:
         if (Math.abs(transparenz[tid]-oldtransparenz[tid])>0){
            //Wenn soll-transparenz fast erreicht ist (+/- 2), dann sofort auf soll umschalten. so wird ein glattes 100 / 0 sofort erreicht. besser fuer den browser, da ganz angezeigt oder ganz ausgeschalten werden kann.
            if(Math.abs(transparenz[tid]-sollt)<4){transparenz[tid]=sollt;}

            //Wenn transparenz quasi 0, dann objekt ganz ausblenden (via display)
            if (transparenz[tid]<3){  objectVisible[tid]=0;  } else {objectVisible[tid]=1;}

            //DOM nur AEndern, wenn das Objekt sichtbar ist. bei display:none ist transp-AEnderung unnOEtige belastung.
            if (objectVisible[tid]==1){
                      document.getElementById(tid).style.opacity=Math.round(transparenz[tid])/100;
                      document.getElementById(tid).style.filter='alpha(opacity='+Math.round(transparenz[tid])+')';
                      oldtransparenz[tid]=transparenz[tid];
            }

            //Display:hide/block-AEnderung durchfuehren, wenn nOEtig
            if (objectVisible[tid]!=oldobjectVisible[tid]){
               if (objectVisible[tid]==1){
                  document.getElementById(tid).style.display='block';
               }else if(objectVisible[tid]==0){
                  document.getElementById(tid).style.display='none';
               }
               oldobjectVisible[tid]=objectVisible[tid];
            }


           //alert (tid+': '+transparenz[tid]+'  - '+transparenzobjektsichtbar[tid]);
         }


//AEnderung uebernehmen: Position:
if (objectVisible[tid]==1){     //Position nur anpassen, wenn man das Objekt ueberhaupt sehen kann:
         //PositionsAEnderung durchfuehren, wenn nOEtig

         xdist=Math.abs(objectposX[tid]-oldobjectposX[tid]);
         ydist=Math.abs(objectposY[tid]-oldobjectposY[tid])
         if (xdist>0){
            if (xdist<.5){objectposX[tid]=objectsollposX[tid];}//Wenn position quasi erreicht, dann auf exakte position setzen.
            document.getElementById(tid).style.left=Math.round(objectposX[tid])+'px';
            oldobjectposX[tid]=objectposX[tid];
         }
         if (ydist>0){
            if (ydist<.5){objectposY[tid]=objectsollposY[tid];}//Wenn position quasi erreicht, dann auf exakte position setzen.
            document.getElementById(tid).style.top=Math.round(objectposY[tid])+'px';
            oldobjectposY[tid]=objectposY[tid];
         }
}



//Noch was unerledigt? Dann Cron nochmal durchlaufen. sonst objekt freigeben.
         //|| Math.abs(objectposX[tid]-oldobjectposX[tid])!=0 || Math.abs(transparenz[tid]-oldtransparenz[tid])>0 ||Math.abs(objectposY[tid]-oldobjectposY[tid])!=0 ||
         if ( Math.abs(transparenz[tid]-sollt)>1 ||  Math.abs(objectposY[tid]-objectsollposY[tid])>1 || Math.abs(objectposX[tid]-objectsollposX[tid])>1){
           setTimeout('updateposition(\''+tid+'\')',timeoutspeed);
         }else{
          objectInWork[tid]=0;//Objekt hat position erreicht und ist nimmer im AEnderungsmodus.
         }



}



function DefineViewArea(vn,x1,y1,x2,y2,hiddenwithoutmouse){
   //Legt eine Viewarea fest und erstellt sie vorher nOEtigenfalls neu.
   ViewAreaHiddenWithoutMouse[vn]=hiddenwithoutmouse;
   oldMouseInViewArea[vn]=123;
   MouseInViewArea[vn]=123;
   ViewAreaX1[vn]=x1;
   ViewAreaY1[vn]=y1;
   ViewAreaX2[vn]=x2;
   ViewAreaY2[vn]=y2;

   //Wenn Scrolling noch nicht festgelegt, dann auf standardmAEï¿½ig 0 setzen
   if (typeof(ViewAreaScrollX[vn])=='undefined'){ViewAreaScrollX[vn]=0;}
   if (typeof(ViewAreaScrollY[vn])=='undefined'){ViewAreaScrollY[vn]=0;}

   ViewAreaCheckContact();//Ist die Maus in der ViewArea?
}




/* Ende: yodl-lib--------*/
var createactive=0;
function initposis(todo){
    getscreenres();
    if (SrX<990){SrX=990;}//Die grafischen elemente erzeugen eine scrolleiste, also is der bildschirm immer mindestens so breit.
    DefineViewArea('wholescreen',0,0,SrX,3000,0);


    objectsollposX['txt1']=SrX/2-150;
    objectsollposY['txt1']=175;

    objectsollposX['txt2']=SrX/2+115;
    objectsollposY['txt2']=365;

    objectsollposX['bild1']=SrX/2-460;
    objectsollposY['bild1']=524;

    objectsollposX['weiter']=SrX/2-260;
    objectsollposY['weiter']=650;


    objectsollposX['createit']=SrX/2-370;
    objectsollposY['createit']=300;


    if (todo=='do'){
       if (createactive==1){
              createitbg(SrX,SrY);
	      adaptposition('createit');
       }
       adaptposition('txt1');
       adaptposition('txt2');
       adaptposition('bild1');
       adaptposition('prefs');
       adaptposition('weiter');
    } else{

    }
}
function createitbg(SrX,SrY){
  document.getElementById('createitbg').style.width=(SrX-20)+'px';
  document.getElementById('createitbg').style.height=SrY+'px';
}
function initpage1(){

           getscreenres();
        if (SrX<990){SrX=990;}//Die grafischen elemente erzeugen eine scrolleiste, also is der bildschirm immer mindestens so breit.
    objectposX['txt1']=SrX/2-200;
    objectposY['txt1']=150;
    objectposX['txt2']=SrX/2-400;
    objectposY['txt2']=300;
    objectposX['bild1']=SrX/2-390;
    objectposY['bild1']=280;
    objectfirstcall['txt1']=0;
    objectfirstcall['txt2']=0;
    objectfirstcall['bild1']=0;
    objectfirstcall['weiter']=0
    objectposX['weiter']=SrX/2-290;
    objectposY['weiter']=750;
    initposis('-');

    setTimeout('adaptposition(\'txt1\');',1000);
    setTimeout('adaptposition(\'txt2\');',1500);
    setTimeout('adaptposition(\'bild1\');',2000);
    setTimeout('adaptposition(\'weiter\');',4000);


    updatepreview('txt1');
    updatepreview('txt2');
    updatepreview('bild1');

   vollzitter('txt1',3000)
   vollzitter('txt2',3500)
   vollzitter('bild1',4000)

   for (i=0;i<50;i++){
       vollzitter('weiter',10000+i*5000);
   }


   clearframe();
}

function zittern(pc){//Lässt das raus-pic zittern, wenn der stempel draufknallt
   var zitterX=Math.round(Math.random()*20)-10;
   var zitterY=Math.round(Math.random()*20)-10;
   objectposX[pc]=objectposX[pc]+zitterX;
   objectposY[pc]=objectposY[pc]+zitterY;
   adaptposition(pc);
}
function vollzitter(pc,zeit){
    //Frage-Blase zittern lassen
    for (var c=0;c<10;c++){
      setTimeout('zittern(\''+pc+'\')',zeit+c*50);
    }
}
function docresize(){
  initposis('do');
}

function prefclose(){
    objectsollposY['prefs']=objectsollposY['prefs']+44
    solltransparenz['prefs']=0;
    adaptposition('prefs');
    initposis('do');
    clearframe();
}
function prefchg(tid){


    /* Die input-kästen verschieben damit man noch auf den preview-text schauen kann */
    var moveX=0;
    var moveY=0;
    if (tid=='txt1'){ moveX=-80;}
    if (tid=='txt2'){ moveX=+50;moveY=-80;}
    if (tid=='bild1'){ moveY=-170;}
    
    initposis('do');
    objectsollposX[tid]+=moveX;
    objectsollposY[tid]+=moveY;
    adaptposition(tid);
    //ende verschieben.

    top.pcnt.hidecont();
    objectsollposX['prefs']=objectsollposX[tid]-42;
    objectsollposY['prefs']=objectsollposY[tid]-7;
    objectposX['prefs']=objectsollposX['prefs'];
    objectposY['prefs']=objectsollposY['prefs']+50;
    solltransparenz['prefs']=100;
    transparenz['prefs']=15;
    objectfirstcall['prefs']=0;
    adaptposition('prefs');
    var ret='';

    if (tid=='txt1' || tid=='txt2'){ //Wenns ne Text-Einstellung ist:

       //txt-datenarray auslesen und editierbar machen
       ret+='<h1>';
       ret+='Bearbeite den Text für deines persönlichen icq-Designs';
       ret+='</h1><table cellpadding=0 cellspacing=0 border=0>';


       for (el in val[tid]){
	 //Die maximallänge eines feldes wird beim ERSTEN editieren ausgelesen, denn da enthält das default entsprechende Anzahl an leerschlägen. dadurch wird das definiert.

	 if (typeof(maxlen[tid+'_'+el])=='undefined'){maxlen[tid+'_'+el]=val[tid][el].length;}

         ret+='<tr><td class="inpNr">'+(Math.round(el)+1)+'.</td>';
	 ret+='<td><input class="inp" name="pref'+el+'" id="prefid_'+el+'_'+tid+'"  onMouseDown="keyhit(this.id,\''+tid+'\',\''+el+'\')" onKeyUp="keyhit(this.id,\''+tid+'\',\''+el+'\')" maxlength="'+maxlen[tid+'_'+el]+'" value="'+trim(val[tid][el])+'" /></td>';
         ret+='<td class="inpLength" id="prefid_'+el.toString()+'_'+tid.toString()+'_length">'+trim(val[tid][el]).length+'/'+maxlen[tid.toString()+'_'+el.toString()].toString()+'</td>';

	 ret+='</tr>';


       }
       ret+='</table>';
       ret+='<center>';
       ret+='<input style="margin-top:5px" type="button" name="" value="Okay" onClick="parent.finishprefedit(\''+tid+'\')"/>';
       ret+='</center>';

    } else{ //bild-upload
       ret+='<div id="ulform"><h1>Du nun ein Bild uploaden.</h1><br><form enctype="multipart/form-data" action="fileupload.php" target="fileupload" method="post"><small>Größe maximal 500KB; Dateityp: JPG, PNG, GIF.</small>';
       ret+='<div style="overflow:hidden;text-align:right;width:230px;height:30px;" align="right">';
       ret+='<input align="right" style="margin-left:-60px;" name="thefile" type="file" size="0"  ><br><br>';
       ret+='</div>';
       ret+='<input type="submit" value="senden" onClick="ajaxloader(0)">';
       ret+='</form></div>';
       ret+='<div id="ajaxloader" style="display:none"><center><br><br><img src="img/ajax-loader.gif"><br><br>Upload läuft.<br><br><small>Bitte etwas Geduld.</small></center></div>';
    }

    document.getElementById('prefcont_send').value=str2hex(ret);
    document.getElementById('pcsubmit').submit();
}
function finishupload(flname){
     val['bild1'][0]=flname;
     finishprefedit('bild1');
}

function finishprefedit(tid){

    updatepreview(tid);
    clearframe();

    objectsollposY['prefs']=objectsollposY['prefs']+44
    solltransparenz['prefs']=0;
    adaptposition('prefs');
    
    initposis('do');


}
function clearframe(){
    document.getElementById('prefcont_send').value=str2hex('<br><br><center><img src="img/ajax-loader.gif"></center>');//DAs frame leeren, damit der alte inhalt beim nächsten aufruf möglichst nicht aufblitzt.
    document.getElementById('pcsubmit').submit();
}

function trim (zeichenkette) {
  // Erst führende, dann Abschließende Whitespaces entfernen
  // und das Ergebnis dieser Operationen zurückliefern
  return zeichenkette.replace (/^\s+/, '').replace (/\s+$/, '');
}

function makeit(){
    createactive=1;//Ab jetzt darf das create-fenster von der fenstergrößenänderungsfunction auch verschoben und angezeigt werden.

    getscreenres();
    if (SrX<990){SrX=990;}//Die grafischen elemente erzeugen eine scrolleiste, also is der bildschirm immer mindestens so breit.
    
    //Alle blasen verstecken
    objectsollposY['txt1']-=30;
    solltransparenz['txt1']=0;
    objectsollposY['txt2']-=30;
    solltransparenz['txt2']=0;
    objectsollposY['bild1']-=30;
    solltransparenz['bild1']=0;
    objectsollposY['weiter']-=30;
    solltransparenz['weiter']=0;

    //create-fenster nochmal richtig ausrichten:
    objectsollposX['createit']=SrX/2-370;
    objectsollposY['createit']=270;

    //Weißen hintergrundblender richtig sizen
    createitbg(SrX,SrY);

    //ein eventuell noch geöffnetes einstellungsmenü schließen (verstecken)
    solltransparenz['prefs']=0;


       adaptposition('prefs');
       adaptposition('createit');
       adaptposition('txt1');
       adaptposition('txt2');
       adaptposition('bild1');
       adaptposition('prefs');
       adaptposition('weiter');


  document.getElementById('createitbg').style.display='block';
  document.getElementById('createit').style.display='block';

  document.getElementById('createit').src='create.php?proc='+myprocid+'&txt1='+escape(val['txt1'].join('~|~'))+'&txt2='+escape(val['txt2'].join('~|~'))+'&bild1='+escape(val['bild1'][0])+'';


}


function ABORTmakeit(){
    createactive=0;//Ab jetzt darf das create-fenster von der fenstergrößenänderungsfunction auch verschoben und angezeigt werden.
    solltransparenz['txt1']=100;
    solltransparenz['txt2']=100;
    solltransparenz['bild1']=100;
    solltransparenz['weiter']=100;
    initposis('do');


  //Create-fenster: inhalt ändern. denn sonst is vllt die kettenbrief-seite mit ihrem Sekündlichen refresh versteckt als inhalt und das wäre trafficverschwendung
  document.getElementById('createit').src='img/ajax-loader.gif';
  //Create-fenster verstecken
  document.getElementById('createitbg').style.display='none';
  document.getElementById('createit').style.display='none';

  //document.getElementById('createit').src='create.php?proc='+myprocid+'&txt1='+escape(val['txt1'].join('~|~'))+'&txt2='+escape(val['txt2'].join('~|~'))+'&bild1='+escape(val['bild1'][0])+'';

}


function str2hex(input) {
    hexOutput = "";
    for (i=0; i<input.length; i++) {
        hexOutput = hexOutput + Dec2Hex(input.charCodeAt(i));
    }
    return hexOutput;
}

function Dec2Hex(Decimal) {
    var hexChars = "0123456789ABCDEF";
    var a = Decimal % 16;
    var b = (Decimal - a)/16;
    hex = "" + hexChars.charAt(b) + hexChars.charAt(a);
    return hex;
}



function updatepreview(tid){
	 //alert (tid);


	 document.getElementById('preview_'+tid).style.backgroundImage='url(preview.php?id='+tid+'&val='+escape(val[tid].join('~|~'))+')';
	 //alert ('preview.php?id='+tid+'&val'+escape(val[tid].join('~|~'))+')      ')

 }

 var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = initmousemove;

window.onresize=docresize;
document.onscroll=getScrollXY;
document.onload=initpage1();
// Ende: Yodllib


