var scrpos=0;
var data = new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1); //Data
var form = new Array(1,2,1,1,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,2,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,1,1,0,4,0,0,1,2,2,1,1,0,0,0,0,0,0,0,0,0,2,1,3,2,2,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,1,0,0,0,0,0,0,0,0,0,2,2,2,1,1,1); //Art des Items
//1:nur eine Auswahl möglich 2: Edit 0: Mehrfachauswahl 3: Listenfeld

var sinf= new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
//1-3: Zahl der Editfelder -1-3: Zahl der Auswahllisten
var sedit= new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
var selist= new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
var sind= new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
sedit[2]=1; 
sedit[5]=4; 
sedit[6]=7; 
sedit[8]=34; 
sedit[10]=44; 
sedit[16]=68; 
sedit[21]=76; 
sedit[22]=77; 
sedit[25]=89; 
sedit[28]=92; 
sedit[29]=93; 
sedit[30]=100; 
sedit[32]=110; 
sedit[43]=140; 
sedit[44]=141; 
sedit[45]=162; 
sedit[46]=163; 
sedit[50]=174; 

selist[6]=6;

selist[11]=45;
selist[27]=91;

sinf[2]=1; 
sinf[5]=2; 
sinf[6]=1;
sinf[8]=1; 
sinf[10]=1; 
sinf[16]=1; 
sinf[21]=1; 
sinf[22]=1; 
sinf[25]=1; 
sinf[28]=1; 
sinf[29]=1; 
sinf[30]=1; 
sinf[32]=1; 
sinf[43]=1; 
sinf[44]=1; 
sinf[45]=1; 
sinf[46]=1; 
sinf[50]=3; 

sinf[11]=-3;
sinf[27]=-1;

sind[1]=0;
sind[2]=1;
sind[3]=2;
sind[4]=3;
sind[5]=4;
sind[6]=6;
sind[7]=10;
sind[8]=21;
sind[9]=35;
sind[10]=36;
sind[11]=45;
sind[12]=48;
sind[13]=60;
sind[14]=64;
sind[15]=67;
sind[16]=68;
sind[17]=69;
sind[18]=70;
sind[19]=71;
sind[20]=75;
sind[21]=76;
sind[22]=77;
sind[23]=78;
sind[24]=79;
sind[25]=80;
sind[26]=90;
sind[27]=91;
sind[28]=92;
sind[29]=93;
sind[30]=94;
sind[31]=101;
sind[32]=110;
sind[33]=111;
sind[34]=131;
sind[35]=132;
sind[36]=133;
sind[37]=134;
sind[38]=135;
sind[39]=136;
sind[40]=137;
sind[41]=138;
sind[42]=139;
sind[43]=140;
sind[44]=141;
sind[45]=142;
sind[46]=163;
sind[47]=164;
sind[48]=165;
sind[49]=170;
sind[50]=174;
sind[51]=177;
sind[52]=178;
sind[53]=179;

var pos = 1; //Position



function TestPos(i)
{
if(i==5 && data[3]==1) return(0);
if(i==11 && !(data[40]==1 || data[42]==1)) return(0);
if(i==18 && data[69]!=2) return(0);
if(i==19 && !(data[69]==0 || data[70]==0)) return(0);
if(i==20 && !(data[69]==0 || data[70]==0)) return(0);
if(i==21 && data[72]!=2) return(0);
if(i==22 && !(data[69]==0 || data[70]==0)) return(0);
if(i==23 && data[69]==2 && data[70]==2) return(0);
if(i==24 && !(data[69]==0 || data[70]==0)) return(0);
if(i==25 && data[69]==2 && data[70]==2) return(0);
if(i==26 && !(data[69]==0 || data[70]==0)) return(0);
if(i==28 && data[69]==2 && data[70]==2) return(0);
if(i==29 && data[69]==2 && data[70]==2) return(0);
if(i==30 && !(data[69]==1 || data[70]==1)) return(0);
if(i==32 && data[101]==-1 && data[102]==-1 && data[103]==-1 && data[104]==-1 && data[105]==-1 && data[106]==-1 && data[107]==-1 && data[108]==-1 && data[109]==-1) return(0);

if(i==40 && !(data[69]==0 || data[70]==0)) return(0);
if(i==41 && data[69]==2 && data[70]==2) return(0);
if(i==42 && data[69]==2 && data[70]==2) return(0);
if(i==43 && data[69]==2 && data[70]==2) return(0);
if(i==45 && !(data[69]==0 || data[70]==0)) return(0);
if(i==46 && !(data[69]==0 || data[70]==0)) return(0);
if(i==52 && data[2]==0) return(0);

return(1);
}




//einfacheAuswahl
function Check(w,i)//w: position in Datenfeld i:Item im Auswahlfeld
{
h1=top.frames[1].document;

if(data[w]==-1)
{
h1.write('<a href="javascript:top.frames[0].next_item(');
h1.write(w + "," + i);
h1.write(')" onMouseDown="wechsel(');
h1.write(i);
h1.write(',2)" onMouseUp="wechsel(');
h1.write(i);
h1.write(',0)" onMouseOver="wechsel(');
h1.write(i);
h1.write(',1)" onMouseOut="wechsel(');
h1.write(i);
h1.write(',0)">');
h1.write('<img border="0" src="images/CheckL.gif" width="16" height="16"></a>');
}
else
{
if(data[w]==i)
{
h1.write('<a href="javascript:top.frames[0].next_item(');
h1.write(w + "," + i);
h1.write(')" onMouseDown="wechsel(');
h1.write(i);
h1.write(',2)" onMouseUp="wechsel(');
h1.write(i);
h1.write(',0)" onMouseOver="wechsel(');
h1.write(i);
h1.write(',1)" onMouseOut="wechsel(');
h1.write(i);
h1.write(',2)">');
h1.write('<img border="0" src="images/CheckT2.gif" width="16" height="16"></a>');
}
else
{
h1.write('<a href="javascript:top.frames[0].next_item(');
h1.write(w + "," + i);
h1.write(')" onMouseDown="wechsel(');
h1.write(i);
h1.write(',2)" onMouseUp="wechsel(');
h1.write(i);
h1.write(',0)" onMouseOver="wechsel(');
h1.write(i);
h1.write(',1)" onMouseOut="wechsel(');
h1.write(i);
h1.write(',0)">');
h1.write('<img border="0" src="images/CheckL.gif" width="16" height="16"></a>');
}
}
}

//MehrfacheAuswahl
function CheckM(w,i)//w: position in Datenfeld i:Item im Auswahlfeld
{
h1=top.frames[1].document;
w=w+i;
if(data[w]==-1)
{
h1.write('<a href="javascript:top.frames[0].next_item(');
h1.write(w + ",1");
h1.write(')" onMouseDown="wechsel(');
h1.write(i);
h1.write(',2)" onMouseUp="wechsel(');
h1.write(i);
h1.write(',0)" onMouseOver="wechsel(');
h1.write(i);
h1.write(',1)" onMouseOut="wechsel(');
h1.write(i);
h1.write(',0)">');
h1.write('<img border="0" src="images/CheckL.gif" width="16" height="16"></a>');
}
else
{
if(data[w]==1)
{
h1.write('<a href="javascript:top.frames[0].next_item(');
h1.write(w + ",1");
h1.write(')" onMouseDown="wechsel(');
h1.write(i);
h1.write(',2)" onMouseUp="wechsel(');
h1.write(i);
h1.write(',0)" onMouseOver="wechsel(');
h1.write(i);
h1.write(',1)" onMouseOut="wechsel(');
h1.write(i);
h1.write(',2)">');
h1.write('<img border="0" src="images/CheckT2.gif" width="16" height="16"></a>');
}
else
{
h1.write('<a href="javascript:top.frames[0].next_item(');
h1.write(w + ",1");
h1.write(')" onMouseDown="wechsel(');
h1.write(i);
h1.write(',2)" onMouseUp="wechsel(');
h1.write(i);
h1.write(',0)" onMouseOver="wechsel(');
h1.write(i);
h1.write(',1)" onMouseOut="wechsel(');
h1.write(i);
h1.write(',0)">');
h1.write('<img border="0" src="images/CheckL.gif" width="16" height="16"></a>');
}
}
}

function show(vor)
{
scrpos=0;

if(vor==1)
{
while(!TestPos(pos))
{
pos=pos+1;
}
}

if(vor==0)
{
while(!TestPos(pos))
{
pos=pos-1;
}
}

if(pos<56)
{
if(pos!=54)
top.frames[1].location.href="seite" + pos + ".htm"; // Neue Seite laden
if(pos==54)
top.frames[1].location.href="seite" + pos + ".php"; // Neue Seite laden
}
else
top.frames[1].location.href="aus" + (pos-55) + ".htm"; // Neue Seite laden
}






function aktPos()
{
apos=top.frames[1].location.href;
i=apos.length
bpos=apos.substring(i-6,i)
cpos=parseInt(bpos);
if(isNaN(cpos))
{
bpos=apos.substring(i-5,i)
cpos=parseInt(bpos);
}
pos=cpos;
if(apos.substring(i-6,i-5)=="s")pos=pos+55;
}


function setedit()
{
aktPos();
if(sinf[pos]>0)
{
h1=top.frames[1].document.EDIT;
pose=sedit[pos];
if(pose==0)alert("Fehler");
else
if(data[pose]!=-1)h1.T1.value=data[pose];

if(pos==6)
if(data[pose+2]!=-1)h1.T2.value=data[pose+2];

if(sinf[pos]>1)
if(data[pose+1]!=-1)h1.T2.value=data[pose+1];

if(sinf[pos]>2)
if(data[pose+2]!=-1)h1.T3.value=data[pose+2];

if(sinf[pos]>3)
if(data[pose+3]!=-1)h1.T4.value=data[pose+3];
}
}

function setlist()
{
aktPos();
if(sinf[pos]<0 || pos==6)
{
h1=top.frames[1].document.EDIT;
pose=selist[pos];
if(pose==0)alert("Fehler");
else
if(data[pose]!=-1)h1.D1.value=data[pose];

if(pos==6)
if(data[pose+2]!=-1)h1.D2.value=data[pose+2];


if(sinf[pos]<-1)
if(data[pose+1]!=-1)h1.D2.value=data[pose+1];

if(sinf[pos]<-2)
if(data[pose+2]!=-1)h1.D3.value=data[pose+2];
}
}


function getedit(x)
{
h1=top.frames[1].document.EDIT;
pose=sedit[x];
if(pose==0)alert("Fehler");
data[pose]=h1.T1.value;

if(x==6)
data[pose+2]=h1.T2.value;

if(sinf[x]>1)
data[pose+1]=h1.T2.value;

if(sinf[x]>2)
data[pose+2]=h1.T3.value;

if(sinf[x]>3)
data[pose+3]=h1.T4.value;
}



function getlist(x)
{
h1=top.frames[1].document.EDIT;
posl=selist[x];
if(posl==0)alert("Fehler");
data[posl]=h1.D1.value;

if(x==6)
data[posl+2]=h1.D2.value;

if(sinf[x]<-1)
data[posl+2]=h1.D2.value;

if(sinf[x]<-2)
data[posl+2]=h1.D3.value;
}

function next_item(w,x)//w: position in Datenfeld x:wert
{
aktPos();

if(sinf[pos]>0)
getedit(pos);

if(sinf[pos]<0)
getlist(pos);

if(form[w]==1)
data[w]=x;

if(form[w]==0)
{
if(w==64 && x==1 && data[64]==-1)
data[66]=-1;
if(w==65 && x==1 && data[65]==-1)
data[66]=-1;
if(w==66 && x==1 && data[66]==-1)
{data[64]=-1; data[65]=-1;}
if(data[w]<=0)data[w]=1;
else data[w]=-1;
}

if(form[w]==4)
{
data[w]=x;
}



if (top.frames[1].pageXOffset) 
{
scrpos = top.frames[1].pageXOffset;
}
else 
if (top.frames[1].document.body) 
{
scrpos=top.frames[1].document.body.scrollTop;
}
top.frames[1].location.reload();
}

function next(x)
{
aktPos();
x=pos;


if(sinf[x]>0)
{
getedit(x);
if(x==6) getlist(x);
}


if(sinf[x]<0)
{
getlist(x);
}

x=x+1;
pos=x;


show(1);
}

function back(x)
{
aktPos();
x=pos;

if(sinf[x]>0)
{
getedit(x);
}

if(sinf[x]<0)
{
getlist(x);
}

x=x-1;

if(x>=1)
{
pos=x;
show(0);
}
}

function getsind()
{
aktPos();
return(sind[pos]);
}



function ret()
{
out="start\t";
for(i=0; i<180; i++)
{
out=out+data[i];
if(i<179) out=out+"\t";
else
out=out+"\n";
}

return(out)
}


function scr()
{
if (top.frames[1].pageXOffset) 
{
top.frames[1].scrollTo(0,scrpos);
}
else 
if (top.frames[1].document.body) 
{
top.frames[1].document.body.scrollTop=scrpos;
}
top.frames[1].scrollTo(0,scrpos);
}   
