// Merkmalsfelder

identfinhalt= new Array();

function IstVerschieden(i) {
  verschieden=false;
  for (t=1;t<=identfmax;t++) {
    if (a_dataTable[an_selection[i]][identf[t]] !=identfinhalt[t]) {
      verschieden=true;
      }
    }  
  if (verschieden) {
    for (t=1;t<=identfmax;t++) {
      identfinhalt[t]=a_dataTable[an_selection[i]][identf[t]];
      }
    }
  return verschieden;
  }

function SelektiereMerkmale() {
  for (t=1;t<=identfmax;t++) {
    identfinhalt[t]="";
    }
  n_selectionLength1=0;
  for (i=1;i<=n_selectionLength;i++) {	
    if (IstVerschieden(i)) {
      n_selectionLength1++;
      an_selection[n_selectionLength1]=an_selection[i];
      }
    }
  n_selectionLength=n_selectionLength1;
  }

// Funktionen, die "oft" gebraucht werden

shopbasis=location.href;
shopbasis=shopbasis.substr(0,shopbasis.lastIndexOf("/"));

function EOAlert(text) {
  window.alert(text); 
//  meldungtext=text;
//  meldungart="alert";
//  link=window.open("frage.htm","Frage","scrollbars=no,menubar=no,toolbar=no,height=40,width=200,resizable=no");
  }

function EOPrompt(text,eingabe) {
  return window.prompt(text,eingabe);
//  meldungtext=text;
//  meldungart="prompt";
//  meldungwert=eingabe;
//  meldungart="prompt";
//  link=window.open("frage.htm","Frage","scrollbars=no,menubar=no,toolbar=no,height=40,width=200,resizable=no");
//  while (!link.closed) {}; //warten
//  return meldungwert;
  }

function EOConfirm(text) {
  return window.confirm(text);
//  meldungtext=text;
//  meldungart="prompt";
//  meldungwert=false;
//  meldungart="confirm";
//  link=window.open("frage.htm","Frage","scrollbars=no,menubar=no,toolbar=no,height=40,width=200,resizable=no");
//  while (!link.closed) {}; //warten
//  return meldungwert;
  }


function EinzelPreis(l) {
  pr="";
  prm=wkinhalt[wkarray[l]][0];
  stf=wkinhalt[wkarray[l]][1];
  if (stf==0) {
	  // Kein Staffelpreis
		pr=wkinhalt[wkarray[l]][2];
		}

	if (stf==2) { 
    // Staffelpreis
		if (prm<(parseInt(wkinhalt[wkarray[l]][3]))) {
	  	pr=pr+wkinhalt[wkarray[l]][2];
			}
    if (prm>=(parseInt(wkinhalt[wkarray[l]][3]))){
  	  pr=pr+wkinhalt[wkarray[l]][4];
		  }
		}

	if (stf==3) { 
    // Staffelpreis
		if (prm<(parseInt(wkinhalt[wkarray[l]][3]))) {
	  	pr=pr+wkinhalt[wkarray[l]][2];
			}
    if (prm<(parseInt(wkinhalt[wkarray[l]][5])) && prm>=(parseInt(wkinhalt[wkarray[l]][3]))){
  	  pr=pr+wkinhalt[wkarray[l]][4];
		  }
		if (prm>=(parseInt(wkinhalt[wkarray[l]][5])) ){
	  	pr=pr+wkinhalt[wkarray[l]][6];
			}
		}
	
	if (stf==4) { 
    // Staffelpreis
		if (prm<(parseInt(wkinhalt[wkarray[l]][3]))) {
	  	pr=pr+wkinhalt[wkarray[l]][2];
			}
    if (prm<(parseInt(wkinhalt[wkarray[l]][5])) && prm>=(parseInt(wkinhalt[wkarray[l]][3]))){
  	  pr=pr+wkinhalt[wkarray[l]][4];
		  }
    if (prm<(parseInt(wkinhalt[wkarray[l]][7])) && prm>=(parseInt(wkinhalt[wkarray[l]][5]))){
  	  pr=pr+wkinhalt[wkarray[l]][6];
		  }
		if (prm>=(parseInt(wkinhalt[wkarray[l]][7])) ){
	  	pr=pr+wkinhalt[wkarray[l]][8];
			}
		}
 
	if (stf==5) { 
    // Staffelpreis
		if (prm<(parseInt(wkinhalt[wkarray[l]][3]))) {
	  	pr=pr+wkinhalt[wkarray[l]][2];
			}
    if (prm<(parseInt(wkinhalt[wkarray[l]][5])) && prm>=(parseInt(wkinhalt[wkarray[l]][3]))){
  	  pr=pr+wkinhalt[wkarray[l]][4];
		  }
    if (prm<(parseInt(wkinhalt[wkarray[l]][7])) && prm>=(parseInt(wkinhalt[wkarray[l]][5]))){
  	  pr=pr+wkinhalt[wkarray[l]][6];
		  }
    if (prm<(parseInt(wkinhalt[wkarray[l]][9])) && prm>=(parseInt(wkinhalt[wkarray[l]][7]))){
  	  pr=pr+wkinhalt[wkarray[l]][8];
		  }
		if (prm>=(parseInt(wkinhalt[wkarray[l]][9])) ){
	  	pr=pr+wkinhalt[wkarray[l]][10];
			}
		}
  return pr;
}

function PositionPreis(l) {
  prm=wkinhalt[wkarray[l]][0];
  preis=prm*parseFloat(EinzelPreis(l));
  if (isNaN(preis)) {
    return EinzelPreis(l)
		}
	else {
    return preis;
		}
}

function Nuller(z) {
  zahl=""+z;
  p=zahl.indexOf(".");
  if (p==-1) {
    zahl=zahl+".00000000000";
    }
  else {
    zahl=zahl+"00000000000";
    }
  p=zahl.indexOf(".");
  if (Nachkommastellen==0) {
    return zahl.substring(0,p);
    }
  else {
    return zahl.substring(0,p+1+Nachkommastellen);
    }
  }

DezimalTrenner=",";
TausenderTrenner=".";
Nachkommastellen=2;
Rundenauf=0.01;


function FormatierterPreis(preis_string,w_kennung) {
  ergebnis="";
  // evtl Währungsbezeichnung entfernen  
  preis_float=(Math.round(parseFloat(preis_string)/Rundenauf)*Rundenauf);
  preis=""+preis_float;
  // Zerlege in Teil vor und nach Dezimalpunkt
  p=preis.indexOf(".");
  if (p==-1) {
    preis=preis+".00000000000";
    }
  else {
    preis=preis+"00000000000";
    }
  p=preis.indexOf(".");
  preis_vor=preis.substring(0,p);
  preis_nach=preis.substring(p+1,p+Nachkommastellen+1);
  // Länge von preis_vor auf vielfaches von 3 bringen
  l=preis_vor.length % 3;
  if (l==1) {
    preis_vor="  "+preis_vor;
    }
  if (l==2) {
    preis_vor=" "+preis_vor;
    }
  tausender_trenner="";
  for (t=1; t <= preis_vor.length/3;t++) {
    ergebnis=ergebnis+tausender_trenner+preis_vor.substring((t*3)-3,(t*3));
    tausender_trenner=TausenderTrenner;
    }
  // Währungsstring
  w="";
  if (w_kennung==1) {
    w=" "+s_currency1;
    }
  if (w_kennung==2) {
    w=" "+s_currency2;
    }
  // Und zurückgeben...
  if (Nachkommastellen==0) {
    ergebnis=ergebnis+w;
    }
  else {
    ergebnis=ergebnis+DezimalTrenner+preis_nach+w;
    }
  if (ergebnis.indexOf("NaN") >=0) {
    if (w_kennung==2) {
      return ""
      }
    else {
      return preis_string; 
			}
    }
  else { 
    return ergebnis;
    }
  }


// Preisfaktor=1;
function Preis(i,z) {  // Preis aus Zeile i ,Spalte+z wegen Staffelpreisen
//  pr = parseFloat(a_dataTable[i][n_priceField+z])*Parameter[a_dataTable[i][Rabatt]];
//  pr = parseFloat(a_dataTable[i][n_priceField+z])*Preisfaktor; 
  pr = a_dataTable[i][n_priceField+z];
  if (isNaN(pr)) {
    pr = a_dataTable[i][n_priceField+z];
		}
	return pr
  }

function CheckMenge(menge) {
  if ((isNaN(parseFloat(menge)) && menge!="") || menge<0) {
    return false;
    }
  else {
    return true;
    }
  }
 
