function Cpg(idx){};

function Xea(){
 Xga();
 Xml = '';
 Xmm = '';
 Xcv('aq');
 Xeb();
}

function Xga(){
 Xfh();
 LAST_HREF ='';
 if (Q['al_url']) LAST_HREF = unescape(Q['al_url']);
 else LAST_HREF = document.referrer;
 if (!LAST_HREF.length) LAST_HREF = 'http://www.js-webShop.com';
 Xmg = 'basket';
 Xmz = Q['image'];
 version = '2.06.c001';
 GO_Xml = '<A HREF="javascript:parent.Xhu();"><IMG alt="'+ unescape(Q['ao_alt']) +'" SRC="'+ Q['ao'] +'" border=0></A>';
 GO_RIGHT = '<A HREF="javascript:parent.Xhv();"><IMG alt="'+ unescape(Q['ap_alt']) +'" SRC="'+ Q['ap'] +'" border=0></A>';
 for (lang in r.language) eval(lang +" = r.language[lang]");
 if (Q['version'] != version) alert(EA_W_VERSION);
 Xgd();
 Xga_font();
 Xga_C();
 Xga_shipping();
 E_R = Q['E_R'];
 Xmy = E_R;
 Xgi();
}

function Xgd(){
 Xmo = 'brutto';
 Xmp = true;
 E_TAX_S = E_TAX_B;
}

function Xga_font(){
 FONT = unescape(Q['font']);
 FONT_NAV = unescape(Q['au']);
 FONT_NAV_H = unescape(Q['au_h']);
 FONT_RH = unescape(Q['aw']);
 FONT_TT = unescape(Q['font_e']);
 FONT_CS = unescape(Q['ay']);
}

function Xga_C(){
 PT_BGC = " bgcolor="+ unescape(Q['pt_bgc']);
 PT_BG = unescape(Q['pt_bg']);
 PT_L = unescape(Q['pt_l']);
 PT_VL = unescape(Q['pt_vl']);
 PT_AL = unescape(Q['pt_al']);
 NP_BGC = " bgcolor="+ unescape(Q['np_bgc']);
 NP_BG = unescape(Q['np_bg']);
 if (Q['tbg_nt'].length) TBG_NT = " bgcolor="+ unescape(Q['tbg_nt']);
 else TBG_NT = "";
 if (Q['tbg_np'].length) TBG_NP = " bgcolor="+ unescape(Q['tbg_np']);
 else TBG_NP = "";
 if (Q['tbg_p'].length) TBG_P = " bgcolor="+ unescape(Q['tbg_p']);
 else TBG_P = "";
 if (Q['tbg_pt'].length) TBG_PT = " bgcolor="+ unescape(Q['tbg_pt']);
 else TBG_PT = "";
 if (Q['tbg_pn'].length) TBG_PN = " bgcolor="+ unescape(Q['tbg_pn']);
 else TBG_PN = "";
 if (Q['tbg_b'].length) TBG_B = " bgcolor="+ unescape(Q['tbg_b']);
 else TBG_B = "";
 if (Q['tbg_br'].length) TBG_BR = " bgcolor="+ unescape(Q['tbg_br']);
 else TBG_BR = "";
 if (Q['tbg_bn'].length) TBG_BN = " bgcolor="+ unescape(Q['tbg_bn']);
 else TBG_BN = "";
 T_W = unescape(Q['t_w']);
 TB_PT = unescape(Q['tb_pt']);
 TB_PN = unescape(Q['tb_pn']);
 TB_P = unescape(Q['tb_p']);
 TB_N = unescape(Q['tb_n']);
 TP_PT = unescape(Q['tp_pt']);
 TP_PN = unescape(Q['tp_pn']);
 TP_P = unescape(Q['tp_p']);
 TP_N = unescape(Q['tp_n']);
 TXT_PN = unescape(Q['txt_pn']);
}

function Xga_shipping(){
 if (Q['v'][0]){
  AREAS = true;
  e_v = 0;
 }
 else AREAS = false;
 if (Q['u'][0]){
  Xmi = true;
  e_u = 0;
 }
 else Xmi = false;
 Xmw = false;
 PAYCHANGE = false;
 for (i in Q['x']) if (Q['x'][i]) if (Q['x'][i]['activ'] == 'y'){
  Xmw = true;
  e_x = i;
  if (Q['x'][i]['curr']){
   if (Q['x'][i]['curr'] != 'all') Xmy = unescape(Q['x'][e_x]['curr']);
   else PAYCHANGE = true;
  }
  break;
 }
}

function Xgi(){
 if (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4) IE4 = true;
 else IE4 = false;
 if (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 5) IE5 = true;
 else IE5 = false;
 if (navigator.appName == "Netscape" && parseInt(navigator.appVersion) == 4) MOZZ4 = true;
 else MOZZ4 = false;
 if (navigator.appVersion.indexOf("Win") >= 0) WIN = true;
 else WIN = false;
 if (navigator.appVersion.indexOf("Mac") >= 0) MAC = true;
 else MAC = false;
 if (!IE4){
  window.captureEvents(Event.ERROR);
  window.onError=Xgj;
 }
}

function Xgj(msg, url, lno){
 if(lno) alert("Message: "+ msg +"\nURL: " + url +"\nLine: "+ lno);
 return true;
}

function Xcv(C_Xmj){
 if (Xmm) return;
 else Xmm = true;
 if (C_Xmj != Xmg && C_Xmj != 'refresh') Xgl(C_Xmj);
 Xgp();
 Xmm = false;
}

function Xgl(C_Xmj){
 if (Q.left){
  if (!Xml){
   this.l.document.location.replace(Q['left']);
   Xml = true;
  }
  Xmg = C_Xmj;
  return;
 }
 var pic = '';
 if (!Xml){ //links wird ganz neu aufgebaut
  Xgm();
  Xml = true;
 }
 else{
  pic = Q['gif_nsel'];
  if (isNaN(Xmg)){
   if (eval("Q['navgif_"+ Xmg +"']")) eval("pic = unescape(Q['navgif_"+ Xmg +"'])");
  }
  else{ if (C[Xmg]['navgif']) pic = C[Xmg]['navgif'];}
  eval("l.document.nav_"+ Xmg +".src=\""+ pic +"\";");
 }
 Xmg = C_Xmj;
 pic = Q['gif_sel'];
 if (isNaN(Xmg)){
  if (eval("Q['navgifs_"+ Xmg +"']")) eval("pic = unescape(Q['navgifs_"+ Xmg +"'])");
 }
 else{ if (C[Xmg]['navgifs']) pic = C[Xmg]['navgifs'];}
 eval("l.document.nav_"+ Xmg +".src=\""+ pic +"\";");
}

function Xgm(){
 with (l.document){
  open();
  write('<html>'+ unescape(Q['nav_C_head']) );
  write('<BODY'+ NP_BGC +' link="'+ PT_L +'" vlink="'+ PT_VL +'" alink="'+ PT_AL +'" background="'+ NP_BG +'">');
  writeln(unescape(Q['nav_C_top']) +'<CENTER>');
  writeln('<TABLE'+ TBG_NT +' width="100%" border="'+ TB_N +'" cellpadding="'+ TP_N +'">');
  write('<TR><Th colspan=2><A href="javascript:parent.Xhz();">');
  writeln('<IMG alt="'+ unescape(Q['ak_alt']) +'" SRC="'+ unescape(Q['ak']) +'" BORDER=0></A></Th></TR>');
  write('<TR><Th width=25% colspan=2>');
  writeln('<A HREF="javascript:parent.Xib();"><IMG alt="'+ unescape(Q['al_alt']) +'" SRC="'+unescape(Q['al'])+'" border=0></A></Th></TR>');
  Xgn('aq');
  for (i in C){
   write('<TR'+ TBG_NP +'><TD ');
   var alink = true;
   if (C[i]['navgif']){
    write('colspan=2>');
    if (C[i]['Xmr']) alink = false;
    else write('<A href="javascript:parent.Xcv('+ i +');">');
    write('<IMG src="'+ unescape(C[i]['navgif']) +'" name="nav_'+ i +'" alt="'+ unescape(C[i]['xxx']) +'" border=0>');
   }
   else{
    write('width=20><A href="javascript:parent.Xcv('+ i +');"><IMG src="'+ Q['gif_nsel'] +'" name="nav_'+ i +'" border=0></A></TD>');
    write('<TD><A href="javascript:parent.Xcv('+ i +');">'+ FONT_NAV + unescape(C[i]['xxx']) +'</FONT>');
   }
   if (alink) write('</a>');
   writeln('</TD></TR>');
  }
  writeln('<TR'+ TBG_NP +'><TD colspan=2><HR></TD></TR>');
  Xgn('basket');
  Xgn('data');
  Xgn('send');
  writeln('<TR'+ TBG_NP +'><TD colspan=2 align=middle>'+ FONT_NAV + '<FONT size=-1>');
  writeln('<FORM accept-charset="ISO-8859-1" name=confign><SELECT name=Xmo onChange="parent.Xek(this)">');
  write('<OPTION value=netto');
  if (Xmo == 'netto') write(' selected');
  writeln('>'+ E_PRINT_NAVIGATION_NETTO);
  write('<OPTION value=brutto');
  if (Xmo == 'brutto') write(' selected');
  write('>'+ E_PRINT_NAVIGATION_BRUTTO +'</SELECT></FORM></FONT></font></TD></TR>');
  writeln('<TR'+ TBG_NP +'><TD colspan=2 align=middle>'+ FONT_NAV + '<FONT size=-1>');
  writeln('<FORM accept-charset="ISO-8859-1" name=config><SELECT name=R onChange="parent.Xej(this)">');
  writeln('<OPTION value='+ E_R +'>'+ E_R);
  for (var jcurr in Q['curr']) if (Q['curr'][jcurr] && jcurr != E_R){
   write('<OPTION value='+ jcurr );
   if (jcurr == Xmy) write(' selected');
   writeln(B_rate(jcurr));
  }
  writeln('</SELECT></FORM></FONT></FONT></TD></TR></TABLE></CENTER>');
  writeln( unescape(Q['nav_C_bottom']) +'</body></html>');
  close();
 }
}
//-------------------------------------------------------------------
function Xgn(C_Xmj){
 with (l.document){
  if (eval("Q['navgif_"+ C_Xmj +"']")){
   write('<TR'+ TBG_NP +'><TD colspan=2><A href="javascript:parent.Xcv(\''+ C_Xmj +'\');">');
   eval("write('<IMG alt=\"'+ unescape(Q['"+ C_Xmj +"_alt']) +'\" src='+ unescape(Q['navgif_"+ C_Xmj +"']) +' name=nav_"+ C_Xmj +"');");
   write(' border=0>');
  }
  else{
   write('<TR'+ TBG_NP +'><TD width=20><A href="javascript:parent.Xcv(\''+ C_Xmj +'\');">');
   writeln('<IMG src="'+ Q['gif_nsel'] +'" name=nav_'+ C_Xmj +' border=0></A></TD>');
   write('<TD><A href="javascript:parent.Xcv(\''+ C_Xmj +'\');">'+ FONT_NAV_H);
   eval("write(E_NAME_"+ C_Xmj.toUpperCase() +" +'</FONT>');");
  }
  writeln('</A></TD></TR>');
 }
}

function Xgp(){
 if (!isNaN(Xmg)){
  if (C[Xmg]['url']) r.document.location.replace(unescape(C[Xmg]['url']))
  else{
   Xgu(unescape(C[Xmg]['xxx']));
   Xgzucts();
   if (C[Xmg]['f']) Xdb('f');
   else Xdb();
   Xfd();
  }
 }
 else{
  if (Q[Xmg]) r.document.location.replace(unescape(Q[Xmg]));
  else{
   eval("Xgu(unescape(E_NAME_" + Xmg.toUpperCase() + "));");
   eval("e_print_" + Xmg + "();");
   Xdb();
  }
 }
}

function Xgu(txt){
 with (r.document){
  open();
  writeln(unescape(Q['C_head']));
  write('<html><BODY'+ PT_BGC +' link="'+ PT_L +'" vlink="'+ PT_VL +'" alink="'+ PT_AL +'" background="');
  if (!isNaN(Xmg)){
   if (C[Xmg]['bg']) write(unescape(C[Xmg]['bg']));
   else write(PT_BG);
  }
  else write(PT_BG);
  writeln('"><FORM accept-charset="ISO-8859-1" name=right onSubmit="return false;">');
  write(unescape(Q['C_top']));
  writeln('<TABLE'+ TBG_PT +' width="'+ T_W +'" border="'+ TB_PT +'" cellpadding="'+ TP_PT +'">');
  write('<TR><TD valign=top>'+ FONT_RH + unescape(Q['xxx']) +' &nbsp;&nbsp; <I>' + txt +'</I><HR></font>'+ FONT_TT );
 }
}

function Xdb(sum){
 with (r.document){
  writeln('<TABLE'+ TBG_PN +' width="'+ T_W +'" border="'+ TB_PN +'" cellpadding="'+ TP_PN +'">');
  if (sum == 'f'){
   writeln(unescape(Q['C_f']));
   writeln('<TR><TD align=middle colspan=3>'+ FONT + E_PRINT_L_PAGE_BOT_SUM1 +'<INPUT type=text name=summe_1 size=8 onChange="parent.Xfd();"><br>');
   writeln(E_PRINT_L_PAGE_BOT_SUM2 +'<INPUT type=text name=summe_2 size=8 onChange="parent.Xfd();"></TD></TR>');
  }
  writeln('<TR><TD>'+ GO_Xml +'</TD>');
  writeln('<TD align=center><A href="javascript:parent.Xhz();">'+ FONT_TT + TXT_PN +'</font></A></TD>');
  writeln('<TD align=right>'+ GO_RIGHT +'</TD></TR></TABLE></FORM>');
  write(unescape(Q['C_bottom']));
  writeln('</body></html>');
  close();
 }
}

function e_print_aq(){
 r.document.writeln( unescape(Q['ah']) +'\t</FONT></td></tr></TABLE>');
}

function e_print_basket(){
 var coo = new Array();
 with (r.document){
  writeln('</font></td></tr></table>');
  writeln('<TABLE'+ TBG_B +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'">');
  coo = Xec();
  for (coi in coo){
   if (coi == name_des_cookies) continue;
   if (coo[coi].indexOf('%7C%7C') == -1) continue;
   writeln('<TR><TD>'+ FONT_CS + unescape(coi) +'</font></TD><TD>'+ FONT_CS);
   writeln('<INPUT type=button name="'+ coi +'" value=\''+ E_PRINT_BASKET_ORDER_GET +'\' onClick="parent.Xff(this);">');
   writeln('<INPUT type=button name="'+ coi +'" value=\''+ E_PRINT_BASKET_ORDER_DEL +'\' onClick="parent.Xetete_order(this);"></TD></TR>');
  }
  if (Xmf.length){
   writeln('<TR'+ TBG_BN +'><TD colspan=2 align=middle>'+ FONT_CS +'<FONT size=+1>'+ E_PRINT_BASKET_ORDER +'</FONT></FONT></TD></TR>');
   writeln('<TR><TD colspan=2 align=middle>'+ FONT_CS +'<INPUT type=button value=\''+ E_PRINT_BASKET_ORDER_ADD +'\' onClick="parent.Xfg();"></TD></TR>');
  }
  writeln('</TABLE><br><br><TABLE'+ TBG_B +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'">');
  Xgz();
  writeln('</TABLE>');
 }
}

function e_print_data(){
 with (r.document){
  writeln('</font></td></tr></table>');
  writeln('<TABLE'+ TBG_B +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'">');
  writeln('<TR><TD valign=top colspan=2>'+ FONT_CS + E_PRINT_DATA_MESS1 +'<BR>'+ E_PRINT_DATA_MESS2 +'</FONT></TD></TR>');
  for (i in Q['W']) if (Q['W'][i]){
   write('<tr');
   if (Q['W'][i]['required'] == "yes") write(TBG_BR);
   writeln('><TD valign=top width=30%>'+ FONT_CS + unescape(Q['W'][i]['name']) +'</FONT></TD>');
   write('<TD valign=top width=70%>'+ FONT_CS + '<INPUT type=text name="'+ Q['W'][i]['name'] +'" size=30 maxlength=40');
   if (B_Xbm[Q['W'][i]['name']]) write(' value=\''+ unescape(B_Xbm[Q['W'][i]['name']]) +'\'');
   else if (Q['W'][i]['default']){
    write(' value=\''+ unescape(Q['W'][i]['default']) +'\'' );
    if (Q['W'][i]['required'] == "yes") B_Xbm[Q['W'][i]['name']] = unescape(Q['W'][i]['default']);
   }
   writeln(' onChange="parent.Xes(this,\''+ i +'\')"><BR></TD></TR>');
  }
  if (Xmw){
   write('<TR'+ TBG_BR +'><TD valign=top width=30%>'+ FONT_CS + E_PRINT_DATA_PAY +'</FONT></TD>\n<TD valign=top width=70%>');
   writeln( FONT_CS + '<SELECT name="x" onChange="parent.Xhw(this);">');
   for (var ix in Q['x']) if (Q['x'][ix]) if (Q['x'][ix]['activ'] == 'y'){
    write('<OPTION value='+ ix );
    if (e_x == ix) write(' selected');
    write('>');
    write(unescape(Q['x'][ix]['name']) +'&nbsp;&nbsp;('+ Xel(Q['x'][ix]['value'])+')');
    if (Q['x'][ix]['curr'])
    if (Q['x'][ix]['curr'] != 'all') write( E_PRINT_DATA_ONLY + unescape(Q['x'][ix]['curr']));
   }
   writeln('</SELECT></TD></TR>');
   if (Q['x'][e_x]['msg'])
   write('<TR><TD valign=top colspan=2>'+ FONT_CS + unescape(Q['x'][e_x]['msg']) + '</TD></TR>');
   for (idx in Q['x'][e_x]){
    if (!isNaN(idx)){
     write('<TR'+ TBG_BR +'><TD valign=top width=30%>'+ FONT_CS + unescape(Q['x'][e_x][idx]));
     write('</FONT></TD>\n<TD valign=top width=70%>'+ FONT_CS + '<INPUT type=text name="pay'+ idx +'" size=30 maxlength=40');
     if (eval("Xmu['pay"+ idx +"']")) write(' value=\''+ eval("Xmu['pay" + idx +"']") +'\'');
     writeln(' onChange="parent.Xer(this)"><BR></TD></TR>');
    }
   }
  }
  if (AREAS){
   write('<TR'+ TBG_BR +'><TD valign=top width=30%>'+ FONT_CS + E_PRINT_DATA_A +'</FONT></TD>\n<TD valign=top width=70%>');
   writeln(FONT_CS + '<SELECT name="v" onChange="parent.Xhx(this);">');
   for (var iv in Q['v']){
    write('<OPTION value='+ iv );
    if (e_v == iv) write(' selected');
    write('>');
    write(unescape(Q['v'][iv]['name']) +'&nbsp;&nbsp;('+ Xel(Q['v'][iv]['value'])+')');
   }
   writeln('</SELECT></TD></TR>');
  }
  if (Xmi){
   write('<TR'+ TBG_BR +'><TD valign=top width=30%>'+ FONT_CS + E_PRINT_DATA_F +'</FONT></TD>\n<TD valign=top width=70%>');
   writeln(FONT_CS + '<SELECT name="u" onChange="parent.Xhy(this);">');
   for (i in Q['u']){
    write('<OPTION value='+ i );
    if (e_u == i) write(' selected');
    write('>');
    write(unescape(Q['u'][i]['name']) +'&nbsp;&nbsp;('+ Xel(Q['u'][i]['value'])+')');
   }
   writeln('</SELECT></TD></TR>');
  }
  writeln('<TR'+ TBG_BN +'><TH colspan=2 align=middle>'+ FONT_CS +"<FONT size=+1>"+ E_PRINT_DATA_SAVE +"</FONT></FONT></TR>");
  writeln('<TR><TD valign=top width=30%><A HREF="javascript:parent.Xed()"><IMG alt="'+ unescape(Q['cookie_alt']) +'" src="'+ unescape(Q['cookie']) +'" border=0></A></TD>');
  writeln('<TD valign=top width=70%>'+ FONT_CS + unescape(Q.km) +'</FONT></TD></TR>');
  writeln('</TABLE>');
 }// end of with
}

function e_print_send(){
 var not_here = '';
 var b_tmp = 0;
 for (t in Q['W']){
  if (Q['W'][t]['required'] == 'yes' && !B_Xbm[Q['W'][t]['name']])
  not_here += Q['W'][t]['name'] + "\n";
 }
 if (Xmw) for (idx in Q['x'][e_x]) if (!isNaN(idx))
 if (!eval("Xmu['pay"+ idx +"']")) not_here += unescape(Q['x'][e_x][idx]) + '\n';
 if (not_here != ''){
  alert(E_THANKS_MISSING + unescape(not_here));
  setTimeout("Xcv('data')",100);
  return;
 }
 for (var iXmd in Xmd) if (Xmd[iXmd]) b_tmp += 1;
 if (!b_tmp){
  alert(E_THANKS_ORDER);
  setTimeout("Xcv('basket')",100);
  return;
 }
 var action = ''+ unescape(Q['action']);
 var enctype = ''+ unescape(Q['enctype']);
 if (Xmw && Q['x'][e_x]['action']) if (Q['x'][e_x]['action'].length != 0){
  action = unescape(Q['x'][e_x]['action']);
  enctype = unescape(Q['x'][e_x]['enctype']);
 }
 var ons = '">';
 if (action.indexOf("mailto:",0) != -1) var ons = '" onSubmit="parent.Xgw()">\n';
 with (r.document){
  writeln('</font></td></tr></table></form>\n<FORM accept-charset="ISO-8859-1" name=send method=post action="'+ action +'" enctype="'+ enctype + ons );
  writeln('<table'+ TBG_PT +' width="'+ T_W +'" border="'+ TB_PT +'" cellpadding="'+ TP_PT +'">');
  if (Q['zit'] && Q['zin'] && Q['ziv'])
  writeln('<INPUT type='+ unescape(Q['zit']) +' name=\''+ unescape(Q['zin']) +'\' value=\''+ unescape(Q['ziv']) +'\'>');
  if (Xmw){
   if (Q['x'][e_x]['zit'] && Q['x'][e_x]['zin'] && Q['x'][e_x]['ziv'])
   writeln('<INPUT type='+ unescape(Q['x'][e_x]['zit']) +' name=\''+ unescape(Q['x'][e_x]['zin']) +'\' value=\''+ unescape(Q['x'][e_x]['ziv']) +'\'>');
  }
  writeln('<TR'+ TBG_BN +'><TH>'+ FONT_CS +'<FONT size=+1><CENTER>'+ E_SEND_HEAD_OWNER +'</CENTER></FONT></FONT></th></tr>');
  writeln('<tr><td>'+ FONT_TT +'<CENTER>'+ unescape(Q['ac']) +'<input type="hidden" name="owner" value=\''+unescape(Q['ac'])+'\'><BR>');
  writeln('<A href="mailto:'+ unescape(Q['ad']) +'">'+ unescape(Q['ad']) +'</A><input type="hidden" name="sys_ad" value=\''+unescape(Q['ad'])+'\'><BR>');
  writeln(unescape(Q['str']) +'<input type=hidden name=sys_str value=\''+unescape(Q['str'])+'\'><BR>');
  writeln(unescape(Q['ae']) +'<input type="hidden" name="sys_ae" value=\''+unescape(Q['ae'])+'\'><BR>');
  writeln(unescape(Q['af']) +'<input type="hidden" name="sys_af" value=\''+unescape(Q['af'])+'\'><BR>');
  writeln(unescape(Q['tel']) +'<input type="hidden" name="sys_tel" value=\''+unescape(Q['tel'])+'\'><br>' );
  write(unescape(Q['fax']) +'<input type="hidden" name="sys_fax" value=\''+unescape(Q['fax'])+'\'></CENTER><P><P>')
  writeln('</FONT></TD></TR></TABLE>');
  writeln('<br><br><TABLE'+ TBG_B +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'">');
  writeln('<TR'+ TBG_BN +'><TH colspan=2>'+ FONT_CS +'<FONT size=+1><CENTER>'+ E_SEND_HEAD_CUSTOMER +'</CENTER></FONT></FONT></th></tr>');
  Xgx();
  Xgz();
  if (action.indexOf("mailto:") == -1 && Q['agbc'] == 'on' && Q['agbt']){
   var sublink = 'javascript:parent.Xhz();';
   if (Q['agbl']) sublink = Q['agbl'];
   writeln('<tr><td colspan=2>'+ FONT_CS +'<input type="checkbox" name="agbj"><a href="'+sublink+'">'+Q['agbt']+'</a></font></td></tr>');
   writeln('<TR><TH colspan=2>'+ FONT_CS +'<INPUT type=button value=\''+ E_PRINT_DATA_OK +'\' onClick="parent.e_submit();">');
  }
  else writeln('<TR><TH colspan=2>'+ FONT_CS +'<INPUT type=submit value=\''+ E_PRINT_DATA_OK +'\'>');
  if (MOZZ4) writeln('<INPUT type=button value=\''+ E_PRINT_DATA_PRINT +'\' onClick="print();">');
  writeln('</FONT></th></TR></TABLE>');
 }
}

function e_submit(){
 if (r.document.send.agbj.checked == true) r.document.send.submit();
 else alert(E_SUBMIT);
}
//---------------------------------------------------------------
function Xgw(){
 setTimeout('alert(E_THANKS_ALERT);',2000);
}
//---------------------------------------------------------------
function Xgx(){
 with (r.document){
  for (var i in Q['W']) if (B_Xbm[Q['W'][i]['name']]){
   var Xmj = Q['W'][i]['name'];
   writeln('<INPUT type=hidden name=\''+ unescape(Xmj) +'\' value=\''+ unescape(B_Xbm[Xmj]) +'\'>');
   writeln('<TR><TD>'+ FONT_CS + unescape(Xmj) +'</font></TD><TD>'+ FONT_CS);
   var alink = false;
   if (Q['W'][i]['validation'] == 'url'){
    write('<A HREF="http://'+ unescape(B_Xbm[Xmj]) +'" target="_new">');
    alink = true;
   }
   else if (Q['W'][i]['validation'] == 'ad'){
    write('<A HREF="mailto:'+ unescape(B_Xbm[Xmj]) +'">');
    alink = true;
   }
   writeln( unescape(B_Xbm[Xmj]) );
   if (alink) write('</a>');
   writeln('</FONT></TD></TR>');
  }
  if (Xmw){
   if (Q['x'][e_x]['msg'])
   writeln('<TR><TD colspan=2>'+ FONT_CS + unescape(Q['x'][e_x]['msg']) +'</TD></TR>');
   strpay_tmp = unescape(Q['x'][e_x]['name']);
   for (pm in Xmu){
    p_idx = pm.substring(3,4);
    writeln('<INPUT type=hidden name="Pay '+ unescape(Q['x'][e_x][p_idx]) +'" value=\''+ unescape(Xmu[pm]) +'\'>');
    writeln('<TR><TD>'+ FONT_CS + strpay_tmp +': &nbsp;'+ unescape(Q['x'][e_x][p_idx]) +'</FONT></TD><TD>'+ FONT_CS);
    writeln(unescape(Xmu[pm]) +'</FONT></TD></TR>');
   }
  }
 }
}

function Xgz(){
 var position = 0;
 var sendval2 = new Array();
 var prod_sum = 0;
 var steuer = new Array();
 for (var midx in Q['n']) if (Q['n'][midx]) steuer[midx] = 0;
 with (r.document){
  writeln('<TR'+ TBG_BN +'><TH colspan=2>'+ FONT_CS +'<FONT size=+1><CENTER>'+ E_PRINT_PROD_ORDER +'</CENTER></FONT></FONT></th></tr>');
//### BENJI ORIGINAL
//### ENDE BENJI ORGINAL
  for (Xme in Xmd) if (Xmd[Xme] && A[Xme]){
   var n = A[Xme]['n'];
   position++;
   write('<TR'+ TBG_BN +'><TD width=70%>'+ '<input type="hidden" name="###=======================" value="======================###">' + '<input type="hidden" name="'+ E_BASKET_HEAD_POS +'_'+position+'" value=" ' + position + '">' +FONT_CS +'<FONT size=+1>');
   if (A[Xme]['url']) write('<A HREF="'+ unescape(A[Xme]['url']) +'">');
   write(unescape(A[Xme]['xxx']) + '<input type="hidden" name="'+ E_BASKET_HEAD_PROD +'_'+position+'" value=" ' + unescape(A[Xme].xxx) + '">');
   if (A[Xme]['url']) write('</a>');
   if (A[Xme]['artnr']){
    write ('<input type="hidden" name="'+ E_BASKET_HEAD_ARTNR +'_'+position+'" value=" ' + A[Xme]['artnr'] + '">');
   }
   writeln('</FONT></FONT></TD><TD>'+ FONT_CS);
   writeln('<A HREF="javascript:parent.Xcv(\''+ Xmf[Xme]['C'] +'\');">'+ E_PRINT_PROD_GOART +'</A>'); //zur Seite
   writeln('<A HREF="javascript:parent.B_storn('+ Xme +');">'+ B_DEL +'</A></FONT></TD></TR>'); //abbestellen
   if (Q['com'] == 'on'){
    write('<TR><TD colspan=2>'+ FONT_CS + E_PRINT_PROD_COM +'&nbsp;&nbsp;&nbsp;<INPUT type=text name="' + E_PRINT_PROD_COM +'_'+position+'" size=50 value=\'');
    if (Xmf[Xme]['com']) write(unescape(Xmf[Xme]['com']));
    writeln('\' onChange="parent.Xmf['+Xme+'].com = this.value;"></FONT></TD></TR>');
   }
   sendval2.gm = 0;
   if (A[Xme]['gm']){ //grundm
    sendval2.gm += Xeh(A[Xme]['gm'],n);
    write('<TR><TD><input type="hidden" name="'+ E_PRINT_PROD_GPREIS +'_'+position+'" value=" ' + Xel(sendval2.gm) + '">'+ FONT_CS + E_PRINT_PROD_GPREIS +'</FONT></TD><TD align=right>'+ FONT_CS + Xel(sendval2.gm) +'</FONT></TD></TR>');
   }
   pda_tmp = 0;
   var pf = '-1';
   var merkmal = '';
   if (A[Xme]['m']) pda_tmp = Xeh(A[Xme]['m'],n);
   if (A[Xme]['p_Xmh']){
    pf = A[Xme]['p_Xmh'];
    f_ar = Xhl(Xme, pf);
    if (f_ar[Xmf[Xme][pf]]){
     merkmal = unescape(f_ar[Xmf[Xme][pf]].name)
     pda_tmp = Xeh(f_ar[Xmf[Xme][pf]].m,n);
    }
   }
   var tmp_out = Xel(pda_tmp);
//   write('<TR><TD><input type="hidden" name="'+ E_PRINT_PROD_SPREIS +'_'+position+'" value=" ' + merkmal + tmp_out.replace(/&nbsp;/g,' ') + '">'+ FONT_CS + E_PRINT_PROD_SPREIS +'<br>'+ merkmal +'</FONT></TD><TD align=right>'+ FONT_CS );
   write('<TR><TD><input type="hidden" name="productPrice_'+position+'" value=" ' + merkmal + tmp_out.replace(/&nbsp;/g,' ') + '">'+ FONT_CS + E_PRINT_PROD_SPREIS +'<br>'+ merkmal +'</FONT></TD><TD align=right>'+ FONT_CS );
   writeln( tmp_out +'</FONT></TD></TR>');
   has_Xmh = false;
   for (var fix in Xmf[Xme]) if (!isNaN(fix)) if (fix != pf){
    f_ar = Xhl(Xme, fix);
    if (f_ar[Xmf[Xme][fix]]){
     tmp_out = Xeh(f_ar[Xmf[Xme][fix]].m,n);
     pda_tmp += tmp_out;
     tmp_out = Xel(tmp_out);
     write('<TR><TD><input type="hidden" name="'+ unescape(Q.B[fix].name) +'_'+position+'" value="'+ unescape(f_ar[Xmf[Xme][fix]].name)+' = ' + tmp_out.replace(/&nbsp;/g,' ') + '">'+ FONT_CS +'+ '+ unescape(Q.B[fix].name) +' '+ unescape(f_ar[Xmf[Xme][fix]].name) +'</FONT></TD><TD align=right>'+ FONT_CS );
     writeln( tmp_out +'</FONT></TD></TR>');
     if (Xmf[Xme][fix][iha]) if (Xmf[Xme][fix][iha] != '1'){
     write('<TR><TD><input type="hidden" name="'+ E_BASKET_HEAD_FEAT +'_'+position+'" value=" ' + unescape(Q.B[fix].name) +' '+ unescape(f_ar[Xmf[Xme][fix]].name) +': '+ tmp_out.replace(/&nbsp;/g,' ')+ FONT_CS +'= '+ unescape(Xmf[Xme][fix][iha]) +'</FONT></TD><TD align=right>'+ FONT_CS + '&nbsp;</td></tr>' );
//fuer hidden-Fields zusammensetzen
     }
     has_Xmh = true;
    }
    else for (var iha in Xmf[Xme][fix]) if (Xmf[Xme][fix][iha] && f_ar[iha]){
     tmp_out = Xeh(f_ar[iha].m,n);
     pda_tmp += tmp_out;
     tmp_out = Xel(tmp_out);
     write('<TR><TD>'+ FONT_CS +'+ '+ unescape(Q.B[fix].name) +' '+ unescape(f_ar[iha].name) +'</FONT></TD><TD align=right>'+ FONT_CS );
     writeln( tmp_out +'</FONT></TD></TR>');
     if (Xmf[Xme][fix][iha]) if (Xmf[Xme][fix][iha] != '1'){
      write('<TR><TD><input type="hidden" name="'+ E_BASKET_HEAD_FEAT +'_'+position+'" value=" ' + unescape(Q.B[fix].name) +' '+ unescape(f_ar[iha].name) +'= ' + unescape(Xmf[Xme][fix][iha]) + ' ### ' +tmp_out.replace(/&nbsp;/g,' ') + '">'+ FONT_CS +'= '+ unescape(Xmf[Xme][fix][iha]) +'</FONT></TD><TD align=right>'+ FONT_CS + '&nbsp;' );
     }
     else {
      write ('<input type="hidden" name="'+ E_BASKET_HEAD_FEAT +'_'+position+'" value=" ' + unescape(Q.B[fix].name) +' '+ unescape(f_ar[iha].name) +': '+ tmp_out.replace(/&nbsp;/g,' ')+ '">');
     }
     write ('</td></tr>');
     has_Xmh = true;
    }
   }
   if (has_Xmh && pda_tmp > 0){
    tmp_out = Xel(pda_tmp);
    writeln('<TR><TD><input type="hidden" name="'+ E_PRINT_PROD_NPREIS +'_'+position+'" value=" '+ tmp_out + '">'+ FONT_CS + E_PRINT_PROD_NPREIS +'</FONT></TD><TD align=right>'+ FONT_CS );
    writeln( tmp_out +'</FONT></TD></TR>');
   }
   if (Xmf[Xme]['j']){
    writeln('<TR><TD><input type="hidden" name="'+ E_PRINT_PROD_AMOUNT +'_'+position+'" value=" '+ Xmf[Xme]['j'] + '">'+ FONT_CS + E_PRINT_PROD_AMOUNT +'</FONT></TD><TD>'+ FONT_CS );
    writeln( Xmf[Xme]['j'] +'</FONT></TD></TR>');
    pda_tmp *= Xmf[Xme]['j'];
    pda_tmp += sendval2.gm;
   }
   if (Xmf[Xme]['j'] || A[Xme]['gm']){
    tmp_out = Xel(pda_tmp);
    writeln('<TR><TD><input type="hidden" name="'+ E_PRINT_PROD_PREIS +'_'+position+'" value=" ' + tmp_out.replace(/&nbsp;/g,' ') + '">'+ FONT_CS + E_PRINT_PROD_PREIS +'</FONT></TD><TD align=right>'+ FONT_CS );
    writeln( tmp_out +'</FONT></TD></TR>');
   }
   prod_sum += pda_tmp;
   steuer[n] += pda_tmp;
   if (Xmp) if (!(Xmo == 'netto' && Q['nbase'] == 'netto')){
    tmp_out = Xel(Xei(pda_tmp,n));
    write('<TR'+ TBG_BR +'><TD><input type="hidden" name="' + E_TAX_S + Q['n'][n] + '%_'+position+'" value=" ' + tmp_out.replace(/&nbsp;/g,' ') + '">'+ FONT_CS + E_TAX_S + Q['n'][n] +'%</FONT></TD><TD align=right>'+ FONT_CS );
    writeln( tmp_out +'</FONT></TD></TR>');
   }
   if (A[Xme]['image'] && Xmg == 'basket' && Xmz == 'on'){
    writeln('<TR><TD>'+ FONT_CS + E_PRINT_PROD_IMAGE +'</FONT></TD><TD>');
    if (A[Xme]['url']){
     writeln('<A HREF="'+ unescape(A[Xme]['url']) +'">');
     writeln('<IMG src="'+ unescape(A[Xme]['image']) +'" border=0 width=150></A>');
    }
    else writeln('<IMG src="'+ unescape(A[Xme]['image']) +'" width=150>');
    writeln('</TD></TR>');
   }
//### Benji Original
//### Ende Benji Original
  }// produkte durch
  writeln('<input type="hidden" name="positions" value="'+ position + '" />');
 }
 Xha(prod_sum, steuer);
}

function Xha(prod_sum, n){
 var tara = 0;
 with (r.document){
  writeln('<TR'+ TBG_BN +'><TD colspan=2 align=middle>'+ FONT_CS +'<FONT size=+1>'+ E_PRINT_SUMMEN_HEAD1);
  writeln('<INPUT type=hidden name=---- value=---------------------------------></FONT></FONT></TD></TR>');
  var tmp_out = Xel(prod_sum);
  write('<TR'+ TBG_BR +'><TD>'+ FONT_CS +'<FONT size=+1>');
  if (Xmo == 'netto' || Xmp == false)
  writeln( E_PRINT_BASKET_NETTO +'<INPUT type=hidden name="'+ E_PRINT_BASKET_NETTO +'Gesamt_Netto" value=\''+ tmp_out.replace(/&nbsp;/g,' ') +'\'>');
  else writeln( E_PRINT_BASKET_BRUTTO +'<INPUT type=hidden name="'+ E_PRINT_BASKET_BRUTTO +'" value=\''+ tmp_out.replace(/&nbsp;/g,' ') +'\'>');
  writeln ('<input type="hidden" name="Perl_Brutto" value=\''+ tmp_out.replace(/&nbsp;/g,' ') +'\'>'); //fuers forward.pl
  writeln('</FONT></FONT></TD><TD align=right>'+ FONT_CS + tmp_out +'</FONT></TD></TR>');
  var n_tara = 0;
  for (var m_ix in n) if (n[m_ix]) if (n[m_ix] > n[n_tara]) n_tara = m_ix;
  if (Xmp && !(Xmo == 'netto' && Q['nbase'] == 'netto')){
   var n_sum = 0;
   for (var m_ix in n) if (n[m_ix]){
    tmp_out = Xei(n[m_ix],m_ix);
    n_sum += tmp_out;
    tmp_out = Xel(tmp_out);
    write('<INPUT type=hidden name="'+ E_TAX_S + Q['n'][m_ix] +'% " value=\''+ tmp_out.replace(/&nbsp;/g,' ') +'\'>');
    writeln('<TR'+ TBG_BR +'><TD>'+ FONT_CS );
    writeln( E_TAX_S + Q['n'][m_ix] +' % </FONT></TD><TD align=right>'+ FONT_CS);
    writeln( tmp_out +'</FONT></TD></TR>');
   }
   if (Xmo == 'netto'){
    prod_sum += n_sum;
    tmp_out = Xel(prod_sum);
    write('<TR'+ TBG_BR +'><TD>'+ FONT_CS +'<FONT size=+1>');
    writeln( E_PRINT_BASKET_BRUTTO +'<INPUT type=hidden name="'+ E_PRINT_BASKET_BRUTTO +'" value=\''+ tmp_out.replace(/&nbsp;/g,' ') +'\'>');
    writeln('</FONT></FONT></TD><TD align=right>'+ FONT_CS + tmp_out +'</FONT></TD></TR>');
   }
  }
  if (Xmw || AREAS || Xmi)
  writeln('<TR'+ TBG_BN +'><TD colspan=2 align=middle>'+ FONT_CS +'<FONT size=+1>'+ E_PRINT_SUMMEN_HEAD2 +'</FONT></FONT></TD></TR>');
  if (Xmw){
   tmp_out = 0;
   if (prod_sum < parseInt(Q['x'][e_x]['y'])){
    tmp_out = Xeh(Q['x'][e_x]['value'],n_tara);
    tara += tmp_out;
   }
   tmp_out = Xel(tmp_out);
   writeln('<INPUT type=hidden name="'+ E_PRINT_DATA_PAY +' " value=\''+ unescape(Q['x'][e_x]['name']) +' = ' + tmp_out.replace(/&nbsp;/g,' ') + '\'>');
   writeln('<TR'+ TBG_BN +'><TD>'+ FONT_CS);
   writeln( E_PRINT_BASKET_PAY + unescape(Q['x'][e_x]['name']) +'</FONT></TD><TD align=right>'+ FONT_CS);
   writeln( tmp_out +'</FONT></TD></TR>');
  }
  if (AREAS){
   tmp_out = 0;
   if (prod_sum < parseInt(Q['v'][e_v]['y'])){
    tmp_out = Xeh(Q['v'][e_v]['value'],n_tara);
    tara += tmp_out;
   }
   tmp_out = Xel(tmp_out);
   writeln('<INPUT type=hidden name="'+ E_PRINT_DATA_A +' " value=\''+ unescape(Q['v'][e_v]['name']) +' = '+ tmp_out.replace(/&nbsp;/g,' ') + '\'>');
   writeln('<TR'+ TBG_BN +'><TD>'+ FONT_CS);
   writeln( E_PRINT_BASKET_A + unescape(Q['v'][e_v]['name']) +'</FONT></TD><TD align=right>'+ FONT_CS);
   writeln( tmp_out +'</FONT></TD></TR>');
  }
  if (Xmi){
   tmp_out = 0;
   if (prod_sum < parseInt(Q['u'][e_u]['y'])){
    tmp_out = Xeh(Q['u'][e_u]['value'],n_tara);
    tara += tmp_out;
   }
   tmp_out = Xel(tmp_out);
   writeln('<INPUT type=hidden name="'+ E_PRINT_DATA_F +' " value=\''+ unescape(Q['u'][e_u]['name']) +' = '+ tmp_out.replace(/&nbsp;/g,' ') + '\'>');
   writeln('<TR'+ TBG_BN +'><TD>'+ FONT_CS);
   writeln( E_PRINT_BASKET_F + unescape(Q['u'][e_u]['name']) +'</FONT></TD><TD align=right>' +FONT_CS);
   writeln( tmp_out +'</FONT></TD></TR>');
  }
  if ( Xmp && !(Xmo == 'netto' && Q['nbase'] == 'netto') && tara > 0){
   tmp_out = Xei(tara,n_tara);
   if (Xmo == 'netto') tara += tmp_out;
   tmp_out = Xel(tmp_out);
   write('<INPUT type=hidden name="' + E_TAX_S + unescape(Q['n'][n_tara]) + '% " value=\''+ tmp_out.replace(/&nbsp;/g,' ') +'\'>');
   writeln('<TR'+ TBG_BR +'><TD>'+ FONT_CS);
   writeln( E_TAX_S + unescape(Q['n'][n_tara]) +' % </FONT></TD><TD align=right>'+ FONT_CS);
   writeln( tmp_out +'</FONT></TD></TR>');
  }
  tmp_out = prod_sum + tara;
  if (Xmw) if (Q['x'][e_x]['eva']) eval(Q['x'][e_x]['eva'].replace(/\%27/g,"'"));
  tmp_out = Xel( tmp_out );
  write('<INPUT type=hidden name="'+ E_PRINT_BASKET_ALL +' " value=\''+ tmp_out.replace(/&nbsp;/g,' ') +'\'>');
  writeln('<TR'+ TBG_BN +'><TD>'+ FONT_CS +'<FONT size=+1>');
  writeln( E_PRINT_BASKET_ALL +'</FONT></FONT></TD><TD align=right>'+ FONT_CS);
  writeln( tmp_out +'</FONT></TD></TR>');
 }
}

function Xgzucts(){
 with (r.document){
  if (C[Xmg]['e']) write( unescape(C[Xmg]['e']) +'</FONT>');
  writeln('<HR></td></tr></TABLE><br><br>');
  if (C[Xmg]['A']) var art = C[Xmg]['A'].split(',');
  else return;
  for (var i in art) if (A[art[i]]){
   if (A[art[i]]['h'] == "1") Xhc(art[i]);
   else if (A[art[i]]['h'] == "2") Chd(art[i]);
    else if (A[art[i]]['h'] == "3") Xhe(art[i]);
     else if (A[art[i]]['h'] == "4") e_printHTML4(art[i]);
      else if (A[art[i]]['h'] == "5") Cpg(art[i]);
       else alert('Unknown HTMLTYP!!');
  }
 }
}

function e_printHTML4(idx){
 with (r.document){
  var trenn = '';
  if (A[idx]['o']) trenn = unescape(A[idx]['o']);
  write('<br><TABLE'+ TBG_P +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'"><TR>');
  writeln('<td>'+ FONT + trenn +'</FONT></td></tr></table><br>');
 }
}

//### LAYOUT TABELLE
function Xhc(idx){
 var cols = 2;
 with (r.document){
  writeln('<TABLE'+ TBG_P +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'"><TR><TD width=10%>');
  Xhk(idx);
  if (A[idx]['j']){
   write('<TD width=10%>');
   cols++;
   Xhg(idx);
  }
  (idx);
  if (A[idx]['image']){
   writeln('<TD width=10%>'+ FONT);
   cols++;
   Xhf(idx, 60);
  }
  if (A[idx]['l']){
   cols++;
   writeln('<td width=40%>'+ FONT + unescape(A[idx]['l']) +'&nbsp;</FONT></TD>');
  }
  if (A[idx]['m'] || A[idx]['gm']){
   cols++;
   write('<td align="right">');
  Xhi(idx);
 }
 if (A[idx]['k']){
  cols++;
  write('<TD width=15%>');
  (idx);
 }
 writeln('</TR>');
 if (A[idx]['B']) (idx, cols);
 writeln('</TABLE>');
 }
}

function Xhd(idx){
 var cols = 1;
 var url = '';
 var rows = 1;
 if (A[idx].o) rows++;
 if (A[idx].l) rows++;
 with (r.document){
  writeln('<TABLE'+ TBG_P +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'"><TR>');
  if (A[idx]['image']){
   cols++;
   write('<TD width=20% rowspan='+ rows +'>');
   Xhf(idx, 150);
   write('<TD width=10% height=10%>');
  }
  else write('<TD width=5% rowspan='+ rows +'>');
  Xhk(idx);
  if (A[idx]['j']){
   cols++;
   write('<TD width=10%>');
   Xhg(idx);
  }
  Xhh(idx, cols);
  if (A[idx]['m'] || A[idx]['gm']){
   cols++;
   write('<td align="right">');
   Xhi(idx);
  }
  if (A[idx]['k']){
   cols++;
   write('<TD width=10%>');
   Xhia(idx);
  }
  writeln('</TR>');
  if (A[idx]['l'])// 2. row
  writeln('<TR><TD colspan='+ cols +'>'+ FONT + unescape(A[idx]['l']) +'&nbsp;</FONT></TD></TR>');
  if (A[idx]['o'])// 3. row
  writeln('<TR><TD width=90% colspan='+ cols +'>'+ FONT + unescape(A[idx]['o']) +'</FONT></TD></TR>');
  cols++
  if (A[idx]['B']) Xgy(idx, cols);
  writeln('</TABLE><P>');
 }
}

function Xhe(idx){
 var brtmp = "<BR>";
 var brtmp2 = "&nbsp;";
 var ros = 1;
 with (r.document){
  writeln('<TABLE'+ TBG_P +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'"><TR>');
  if (A[idx]['image']){
   if (A[idx].l) ros++;
   if (A[idx].o) ros++;
   if (A[idx].j) ros++;
   if (A[idx].m || A[idx].gm || A[idx].k) ros++;
   brtmp = "<P>";
   brtmp2 = "<BR>";
   write('<TD rowspan='+ ros +' align=middle>');
   Xhf(idx, parseInt(T_W * .7));
  }
  Xhh(idx);
  writeln('</TR>');
  if (A[idx]['l']) writeln('<TR><TD colspan=2>'+ FONT + unescape(A[idx]['l'])+'&nbsp;</FONT></TD></TR>');
  if (A[idx]['o']) writeln('<TR><TD colspan=2>'+ FONT + unescape(A[idx]['o']) +'</FONT></TD></TR>');
  if (A[idx]['j']) write('<TR><TD>');
  else write('<TR><TD colspan=2>');
  Xhk(idx);
  if (A[idx]['j']){
   write('<TD>');
   Xhg(idx);
  }
  writeln('</tr>');
  if (A[idx]['m'] || A[idx]['gm']){
   if (A[idx]['k']) write("<TR><TD align=right>");
   else write('<TR><TD align=right colspan=2>');
   Xhi(idx);
  }
  if (A[idx]['k']){
   if (A[idx]['m'] || A[idx]['gm']) writeln('<td>');
   else writeln('<TR><TD colspan=2>');
   Xhia(idx);
  }
  if (A[idx]['m'] || A[idx]['gm'] || A[idx]['k']) writeln('</TR>');
  if (A[idx]['B']) Xgy(idx, 2);
  writeln('</TABLE><P>');
 }
}

function Xhf(idx, tw){
 with (r.document){
  if (A[idx]['url']) write('<A HREF="'+ unescape(A[idx]['url']) +'">');
  write('<IMG src="'+ unescape(A[idx]['image']) +'" width='+ tw +' border=0>');
  if (A[idx]['url']) write('</A>');
  writeln('</TD>');
 }
}

function Xhg(idx){
 with (r.document){
  write( FONT + E_PRINT_HTML_MENGE +'&nbsp;<INPUT name="j'+ idx +'" onChange="parent.Xeu('+ idx +',this.value);" maxlength=5 size=4 type=text');
  if (Xmd[idx]) write(' value='+ Xmf[idx]['j']);
  writeln('></FONT></TD>');
 }
}

function Xhh(idx){
 with (r.document){
  if (A[idx]['h'] == '3') write('<td colspan=2>');
  else write('<td>');
  var ahref = true;
  if (A[idx]['o'] && A[idx]['h'] == '1') write('<A HREF="javascript:parent.Xia('+ idx +');">');
  else if (A[idx]['url'] && !(A[idx]['h'] == '2' && A[idx].image)) write('<A HREF="'+ unescape(A[idx]['url']) +'">');
   else ahref = false;
  write( FONT +'<B>'+ unescape(A[idx]['xxx']) +'</B></FONT>');
  if (ahref) write('</a>');
  writeln('</td>');
 }
}

function Xhi(idx){
 with (r.document){
  write( FONT );
  if (A[idx]['gm']){
   write( E_PRINT_HTML_GPREIS + Xel(Xeh(A[idx]['gm'],A[idx]['n']))+'<p>');
   if (A[idx]['m']) write( E_PRINT_HTML_PREIS );
  }
  if (A[idx]['m']) write( Xel(Xeh(A[idx]['m'],A[idx]['n'])));
  writeln('</FONT></TD>');
 }
}

function Xhia(idx){
 with (r.document){
  write(FONT + E_PRINT_HTML_PREISA +'<BR><INPUT type=text name="k'+ idx );
  writeln('" size=8 maxlength=20 onChange="parent.Xez(\''+ idx +'\');"></FONT></TD>');
 }
}

function Xhk(idx){
 with (r.document){
  if (A[idx]['typ'] == '0'){
   write(FONT + E_PRINT_HTML_ORD +'<BR>');
   write('<INPUT type=checkbox name="check'+ idx +'" onClick="parent.Xeu('+ idx +',-1);"');
   if (Xmd[idx]) write(' checked');
   writeln('></font></td>');
  }
  else if (A[idx]['typ'] == '1'){ //Bild
   B_IMG = Q['b_img'];
   B_B_IMG = Q['b_b_img'];
   b_pic = B_IMG;
   if (Xmd[idx]) b_pic = B_B_IMG;
   write('<A HREF="javascript:parent.Xeu('+ idx +',-1);"');
   writeln(' onMouseOver="eval(\'parent.b_pic = document.pic'+ idx +'.src; document.pic'+ idx +'.src = parent.Q[\\\'b_a_img\\\'];\');"');
   writeln(' onMouseOut="document.pic'+ idx +'.src= parent.b_pic ;">');
   write('<IMG alt="'+ unescape(Q['b_alt']) +'" name="pic'+ idx +'" src="'+ b_pic +'" border=0></A></font></td>');
  }
  else if (A[idx]['typ'] == '2') Xhg(idx);
 }
}

function Xgy(aix, cols){
 feat = A[aix]['B'].split(',');
 with (r.document){
  write('<tr><td colspan="'+ cols +'">');
  for (var ifeat in feat) if (Q.B[feat[ifeat]]){
   var fix = feat[ifeat];
   var f_ar = Xhl(aix, fix);
   if (Q['B'][fix]['ftype'] == 'text'){
    writeln( FONT + unescape(Q.B[fix].name) + '<BR>');
    for (iafs in f_ar){
     write(unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
     write('\t<input name=a'+aix+'f'+fix+'i'+iafs+' type="text" onChange="parent.B_set_Xmh(this);" value=\'');
     if (Xmf[aix]) if (Xmf[aix][fix]) if (Xmf[aix][fix][iafs]){
      write(unescape(Xmf[aix][fix][iafs]));
     }
     writeln('\'><br>');
    }
   }
   else if (Q['B'][fix]['ftype'] == 'checkbox'){
    write( FONT + unescape(Q.B[fix].name) +'<BR>');
    for (iafs in f_ar){
     write('<input name=a'+aix+'f'+fix+'i'+iafs+' type="checkbox" onClick="parent.B_set_Xmh(this);"');
     if (Xmd[aix]) if (Xmf[aix][fix]) if (Xmf[aix][fix][iafs]) write(' checked');
     writeln('>'+unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
    }
    writeln('<br>');
   }
   else if (Q['B'][fix]['ftype'] == 'radio'){
    writeln( FONT + unescape(Q.B[fix].name) +'<hr>');
    for (var iafs in f_ar){
     write('<input name=a'+aix+'f'+fix+' type=radio value='+ iafs +' onClick="parent.B_set_Xmh(this);"');
     if (Xmd[aix]){ if (Xmf[aix][fix] == iafs ) write(' checked');}
     else if (iafs == 0) write(' checked');
     write('>'+ unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
     write('<br>');
    }
    write('<br>');
   }
   else if (Q['B'][fix]['ftype'] == 'select'){
    write( FONT + '<SELECT name=a'+ aix +'f'+ fix +' onChange="parent.B_set_Xmh(this);"><OPTION value=head>'+ unescape(Q.B[fix].name) +'</OPTION>');
    for (var iafs in f_ar){
     write('<OPTION value='+ iafs );
     if (Xmd[aix]) if (Xmf[aix][fix]+'a' == iafs+'a') write(' selected');
     write('>'+ unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
     writeln('</OPTION>');
    }
    write('</SELECT></font>');
   }
   write('<br>');
  }
  writeln('</TD></TR>');
 }
}

function Xhl(Xmj, idx){
 var f_ar = new Array();
 if (A[Xmj][idx]){
  var f_st = A[Xmj][idx];
  var ix = 0;
  if (f_st.indexOf('|',0) != -1) while ((ss = f_st.substring(0,f_st.indexOf('|'))) != ''){
   s_n = ss.substring(0,ss.indexOf(','));
   s_p = ss.substring(ss.indexOf(',') + 1, ss.length);
   f_ar[ix] = new Array();
   f_ar[ix].name = s_n;
   if (parseInt(s_p)) f_ar[ix].m = s_p;
   else f_ar[ix].m = 0;
   ix++;
   f_st = f_st.substring(f_st.indexOf('|') + 1, f_st.length);
  }
  else{
   var stst;
   for (var sf in Q['B'][idx]) if (!isNaN(sf)){
    f_ar[sf] = new Array();
    f_ar[sf].name = Q.B[idx][sf];
    stst = f_st.substring(0,f_st.indexOf('~'))
    if (parseInt(stst)) f_ar[sf].m = stst;
    else f_ar[sf].m = 0;
    f_st = f_st.substring(f_st.indexOf('~') + 1, f_st.length);
   }
  }
 }
 else for (var sf in Q['B'][idx]) if (!isNaN(sf)){
  f_ar[sf] = new Array();
  f_ar[sf].name = Q.B[idx][sf];
  f_ar[sf].m = 0;
 }
 for (var ix in f_ar){
  f_ar[ix].name = f_ar[ix].name.replace(/,/g,'%2C');
  f_ar[ix].name = f_ar[ix].name.replace(/~/g,'%7E');
 }
 return(f_ar)
}

function Xhr(){
 var such = '';
 if ((such = prompt (E_SEARCH_PROMPT,'')) == null) return;
 if (such == '') return;
 Xmm = true;
 Xmg = 'basket';
 Xgu(E_SEARCH_NAME);
 r.document.writeln(E_SEARCH_ERG1 + such + E_SEARCH_ERG2 +'</FONT><HR></TABLE>');
 such = Xht(such.toLowerCase());
 for (a in A){
  if (Xhs(a,such)){
  if (A[a]['h'] == "1") Xhc(a);
  else if (A[a]['h'] == "2") Xhd(a);
   else if (A[a]['h'] == "3") Xhe(a);
    else alert("Unknown HTMLTYP!!");
  }
 }
 Xdb();
 Xfd();
 Xmm = false;
}

function Xhs(Xmj,term){
 var tmp = unescape(A[Xmj]['xxx'].toLowerCase());
 if (tmp.indexOf(term) != -1) return true;
 if (A[Xmj]['l']){
  tmp = unescape(A[Xmj]['l'].toLowerCase());
  if (tmp.indexOf(term) != -1) return true;
 }
 if (A[Xmj]['o']){
  tmp = unescape(A[Xmj]['o'].toLowerCase());
  if (tmp.indexOf(term) != -1) return true;
 }
 return false;
}

function Xht(txtin){
 txtin = txtin.replace(/ä/g,"&auml;");
 txtin = txtin.replace(/ü/g,"&uuml;");
 txtin = txtin.replace(/ö/g,"&ouml;");
 txtout = txtin.replace(/ß/g,"&szlig;");
 return(txtout);
}

function Xhu(){
 if (Xmm) return;
 Xmm = true;
 var prev_C = '';
 if (Xmg == 'aq') prev_C = 'send';
 else if (Xmg == 'send') prev_C = 'data';
  else if (Xmg == 'data') prev_C = 'basket';
   else if (Xmg == 'basket') prev_C = C.length - 1;
    else if (Xmg == 0) prev_C = 'aq';
     else prev_C = Xmg - 1;
 Xmm = false;
 Xcv(prev_C);
}

function Xhv(){
 if (Xmm) return;
 Xmm = true;
 var next_C = '';
 if (Xmg == 'aq') next_C = 0;
 else if (Xmg == 'basket') next_C = 'data';
  else if (Xmg == 'data') next_C = 'send';
   else if (Xmg == 'send') next_C = 'aq';
    else if (Xmg == C.length - 1) next_C = 'basket';
     else next_C = Xmg + 1;
 Xmm = false;
 Xcv(next_C);
}

function Xhw(s_obj){
 Xmu = new Array();
 e_x = s_obj.options[s_obj.selectedIndex].value;
 PAYCHANGE = true;
 if (Q['x'][e_x]['curr']) if (Q['x'][e_x]['curr'] != 'all'){
  PAYCHANGE = false;
  Xmy = unescape(Q['x'][e_x]['curr']);
  Xml = false;
 }
 Xcv(Xmg);
}

function Xhx(s_obj){// oder eher b_set_v?
 if (s_obj.type == 'select-one') e_v = s_obj.options[s_obj.selectedIndex].value;
 else e_v = s_obj;
 if (Q['v'][e_v]['n'] == 'no'){
  Xmp = false;
  if (Xmo == 'brutto'){
   alert(EA_LIEFER_NETTO);
   Xek('netto');
  }
 }
 else{
  Xmp = true;
  if (Xmo == 'netto'){
   alert(EA_LIEFER_BRUTTO);
   Xek('brutto');
  }
 }
}

function Xhy(s_obj){
 e_u = s_obj.options[s_obj.selectedIndex].value;
}

function Xhz(){
 Xgu(E_NAME_OWNER);
 with (r.document){
  writeln('<CENTER>'+ unescape(Q['ac']) +'<BR>');
  writeln('<A href="mailto:'+ unescape(Q['ad']) +'">'+ unescape(Q['ad']) +'</A><BR>');
  writeln(unescape(Q['str']));
  writeln(unescape(Q['ae']) +'<BR>');
  writeln(unescape(Q['af']) +'<BR>');
  writeln(unescape(Q['tel']) );
  writeln(unescape(Q['fax']) +'<P><P>')
  writeln(unescape(Q['ag']) );
  writeln('\t</FONT></TD></TR></TABLE>');
  path = unescape(location.href.substring(0,location.href.lastIndexOf('/') + 1));
  proto = path.substring(0,path.indexOf(':'));
  write(unescape(Q['C_bottom']));
  writeln('<TABLE'+ TBG_PN +' width="'+ T_W +'" border="'+ TB_PN +'" cellpadding="'+ TP_PN +'">');
  writeln('<TR><TD>'+ GO_Xml +'</TD>');
  writeln('<TD align=right>'+ GO_RIGHT +'</TD></TR></TABLE></FORM></body></html>');
  close();
 }
}

function Xia(idx){
 with (r.document){
  Xgu(unescape(A[idx]['xxx']));
  writeln( unescape(A[idx]['o']) );
  if (A[idx]['url'])
  writeln('<P align="center"><A href="'+ unescape(A[idx]['url']) +'">'+ E_SHOWDESC_MORE +'</A>');
  writeln('<P><center><A href="javascript:parent.Xcv(\''+ Xmg +'\');">'+ E_SHOWDESC_BACK +'</FONT></A></center></TD></TR></TABLE>');
  Xdb();
 }
}

function Xib(){
 if (confirm(E_LEAVE_CONFIRM)) document.location.replace(Q['al_url']);
}

function Cgy(aix, cols){
 feat = A[aix]['B'].split(',');
 with (r.document){
  for (var ifeat in feat) if (Q.B[feat[ifeat]]){
   var fix = feat[ifeat];
   var f_ar = Xhl(aix, fix);
   if (Q['B'][fix]['ftype'] == 'text'){
    writeln( FONT + unescape(Q.B[fix].name));
    for (iafs in f_ar){
     write(unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
     write('\t<input name=a'+aix+'f'+fix+'i'+iafs+' type="text" onChange="parent.B_set_Xmh(this);" value=\'');
     if (Xmf[aix]) if (Xmf[aix][fix]) if (Xmf[aix][fix][iafs]){
      write(unescape(Xmf[aix][fix][iafs]));
     }
     writeln('\'><br>');
    }
   }
   else if (Q['B'][fix]['ftype'] == 'checkbox'){
    write( FONT + unescape(Q.B[fix].name));
    for (iafs in f_ar){
     write('<input name=a'+aix+'f'+fix+'i'+iafs+' type="checkbox" onClick="parent.B_set_Xmh(this);"');
     if (Xmd[aix]) if (Xmf[aix][fix]) if (Xmf[aix][fix][iafs]) write(' checked');
     writeln('>'+unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
    }
    writeln('<br>');
   }
   else if (Q['B'][fix]['ftype'] == 'radio'){
    writeln( FONT + unescape(Q.B[fix].name));
    for (var iafs in f_ar){
     write('<input name=a'+aix+'f'+fix+' type=radio value='+ iafs +' onClick="parent.B_set_Xmh(this);"');
     if (Xmd[aix]){ if (Xmf[aix][fix] == iafs ) write(' checked');}
     else if (iafs == 0) write(' checked');
     write('>'+ unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
     write('<br>');
    }
    write('<br>');
   }
   else if (Q['B'][fix]['ftype'] == 'select'){
    write( FONT + '<SELECT name=a'+ aix +'f'+ fix +' onChange="parent.B_set_Xmh(this);"><OPTION value=head>'+ unescape(Q.B[fix].name) +'</OPTION>');
    for (var iafs in f_ar){
     write('<OPTION value='+ iafs );
     if (Xmd[aix]) if (Xmf[aix][fix]+'a' == iafs+'a') write(' selected');
     write('>'+ unescape(f_ar[iafs].name));
     if ( parseInt(f_ar[iafs].m) > 0){
      if (eval("A[aix]['p_Xmh'] == fix")) write(' (');
      else write(' ('+ E_PRINT_FEATURES_ADD );
      write(Xel(Xeh(f_ar[iafs].m,A[aix]['n'])) +')');
     }
     writeln('</OPTION>');
    }
    write('</SELECT></font>');
   }
   write('<br>');
  }
 }
}


function Cpg(idx){
 var cols = 4;
 var url = '';
 var rows = 1;
 var subArt = new Array();
 if (A[idx]['A']) var artgr = A[idx]['A'].split(",");
 for(var i in artgr)
  if(A[artgr[i]]){
   rows ++;
   if(A[artgr[i]]['st']) rows++;
  };
 if (A[idx].t) rows++;
 if (A[idx].b) rows++;
 if (A[idx]['image']) cols++;
 with (r.document){
  writeln('<TABLE'+TBG_P +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'">');
  writeln('<TR><TD colspan="' + cols + '" align="center">');
  writeln( FONT + '<B>' + unescape(A[idx]['xxx']) + '</B></FONT></TD></TR>');
  if (A[idx]['image']){
   write('<TR><TD width=20% rowspan='+ rows +'>');
   Xhf(idx, 150);//Schreipt Bild + url
   cols --;
   writeln('</TR>');
  }//*/
  if (A[idx].t)
   writeln('<TR><TD WIDTH="80%" COLSPAN="' + cols + '">' + FONT + unescape(A[idx]['t']) + '</FONT></TD></TR>');  
  for (var i in artgr)if(A[artgr[i]]){
   write('<TR><TD width=10% height=10%>');
   Xhk(artgr[i]);//Mengeneingabefeld!
   if (A[artgr[i]]['l']) //Kurzbeschreibung!
    writeln('<TD>' + FONT + unescape(A[artgr[i]]['l']) + '</FONT>');
   if (A[artgr[i]]['B']){ //Merkmale!
    writeln('<TD>');
    Cgy(artgr[i], cols);
   }
   if (A[artgr[i]]['m'] || A[artgr[i]]['gm']){
    cols++;
    write('<td align="right">');
    Xhi(artgr[i]);//Preis?
   }
   writeln('</TD></TR>');
   if (A[artgr[i]]['st']) writeln('<TR><TD COLSPAN=3>' + FONT + unescape(A[artgr[i]]['o']) + '</FONT></TD></TR>');
  }
  if (A[idx].b)
   writeln('<TR><TD WIDTH="80%" COLSPAN="' + cols + '">' + FONT + A[idx]['b'] + '</FONT></TD></TR>');  
  if (A[idx]['image']) cols++;
  writeln('<TR><TD COLSPAN="' + cols + '"><HR></TABLE><BR>');
 }
} 

function Chd(idx){
 var cols = 1;
 var rows = 1;
 if (A[idx].o) rows++;
 if (A[idx].image) cols++;
 if (A[idx].l) cols++;
 if (A[idx]['m'] || A[idx]['gm']) cols++;
 if (A[idx]['k']) cols++;
 with (r.document){
  writeln('<TABLE'+TBG_P +' width="'+ T_W +'" border="'+ TB_P +'" cellpadding="'+ TP_P +'">');
  writeln('<TR><TD colspan="' + cols + '" align="center">');
  writeln( FONT + '<B>' + unescape(A[idx]['xxx']) + '</B></FONT></TD></TR>');
  if (A[idx]['image']){
   write('<TD width=20% rowspan='+ rows +'>');
   Xhf(idx, 150);
   write('<TD width=10% height=10%>');
  };
  Xhk(idx);
  if (A[idx]['l'])
   writeln('<TD WIDTH="60%">'+ FONT + unescape(A[idx]['l'])+'</FONT></TD>'); 
  if (A[idx]['m'] || A[idx]['gm']){
   write('<td align="right">');
   Xhi(idx);
  }
  if (A[idx]['o'])
  writeln('<TR><TD width=90% colspan='+ cols +'>'+ FONT + unescape(A[idx]['o']) +'</FONT></TD></TR>');
  if (A[idx]['B']) Xgy(idx, cols);
  writeln('<TR><TD WIDTH=100% COLSPAN=' + cols + '><HR><BR></TD></TR>');
  writeln('</TABLE>');
 }
} 

