function lowerThan(d,c){return(d<c)}function biggerThan(d,c){return(d>c)}function xAnd(d,c){return(d&c)}function and(d,c){return(d&&c)}function SRJSPreisrechner(b,a){this.DEBUG=0;this.FACTOR=0;this.SUMMAND=1;this.EQUAL=2;this.TEXT=3;this.SELECT=4;this.QMQTY=5;this.Rex=/\D$/;this.FloatExchange=/(\d*)+(\.)?(\d*)/;this.IntExchange=/(\d*)/;this.FacSelects=new Object();this.SumSelects=new Object();this.EquSelects=new Object();this.QmQtySelects=new Object();this.Taxrate=0;this.FixPrice=0;this.FORM=b;this.QElement=null;this.QType=this.TEXT;this.QTY=1;this.QM=1;this.QMType=this.TEXT;this.QmWElement=null;this.QmHElement=null;this.PPBElement=null;this.BSelect=null;this.PPB=1;this.PPBType=this.TEXT;this.Prices=new Array();this.BindPrices=new Array();this.someOfThePages=new Array();this.showIfPrice=new Array();this.FixPrice=0;this.Surcharge=-1;this.optionPrefix=a;this.DisplayNetto=null;this.DisplayMwst=null;this.DisplayBrutto=null;this.DisplaySurchargeNetto=null;this.DisplaySurchargeMwst=null;this.DisplaySurchargeBrutto=null}SRJSPreisrechner.prototype.useBindings=function(){if(null!=this.PPBElement&&null!=this.BSelect){return true}return false};SRJSPreisrechner.prototype.addFixpreis=function(a){this.FixPrice+=parseFloat(a)};SRJSPreisrechner.prototype.update=function(){this.getQuantity();if(isNaN(this.QTY)||this.QTY==0){if(this.DisplayNetto){this.DisplayNetto.innerHTML="0.00";this.resizeDisplay(this.FORM.srjsPRDisplayNetto,4)}if(this.DisplayMwst){this.DisplayMwst.innerHTML="0.00";this.resizeDisplay(this.FORM.srjsPRDisplayMwst,4)}if(this.DisplayBrutto){this.DisplayBrutto.innerHTML="0.00";this.resizeDisplay(this.FORM.srjsPRDisplayBrutto,4)}if(-1!=this.Surcharge){if(this.DisplaySurchargeNetto){this.DisplaySurchargeNetto.innerHTML="0.00"}if(this.DisplaySurchargeMwst){this.DisplaySurchargeMwst.innerHTML="0.00"}if(this.DisplaySurchargeBrutto){this.DisplaySurchargeBrutto.innerHTML="0.00"}}for(var k=0;k<this.showIfPrice.length;++k){this.showIfPrice[k].style.visibility="hidden";this.showIfPrice[k].style.display="none"}return true}var r=0;var l=0;var u=0;var d=this.QTY;if(this.QType==this.TEXT){for(var k=0;k<this.Prices.length;k++){l=this.Prices[k][1];var s=this.Prices[k][0]-u;if(d<s){s=d}r+=l*s;u=this.Prices[k][0];d=this.QTY-this.Prices[k][0];if(d<1){break}}if(d>0){r+=l*d}}else{r+=this.Prices[this.QElement.selectedIndex][1]}var g="";var f=1;if(this.DEBUG){g+="\n "+f+": "+r;++f}r*=this.getQm();r+=this.FixPrice;if(this.DEBUG){g+="\n "+f+": "+r;++f}for(var k in this.QmQtySelects){var h=document.getElementById(this.optionPrefix+k).selectedIndex;r+=this.QmQtySelects[k][h]*this.QTY*this.QM;if(this.DEBUG){g+="\n Q: "+r}}for(var k in this.SumSelects){var h=document.getElementById(this.optionPrefix+k).selectedIndex;r+=this.SumSelects[k][h]*this.QTY;if(this.DEBUG){g+="\n "+f+": "+r;++f}}for(var k in this.FacSelects){var h=document.getElementById(this.optionPrefix+k).selectedIndex;r*=this.FacSelects[k][h];if(this.DEBUG){g+="\n "+f+": "+r;++f}}for(var k in this.EquSelects){var h=document.getElementById(this.optionPrefix+k).selectedIndex;r+=this.EquSelects[k][h];if(this.DEBUG){g+="\n "+f+": "+r;++f}}if(0<this.someOfThePages.length){var q=0;for(var k=0;k<this.someOfThePages.length;++k){if(this.someOfThePages[k]["field"]){var m=parseInt(this.checkInteger(this.someOfThePages[k]["field"].value));q+=m*parseFloat(this.someOfThePages[k]["price"])}}if(this.PPB>0){r+=(q*(this.QTY/this.PPB))}}if(this.DEBUG){g+="\n "+f+": "+r;++f}if(this.useBindings()){r+=this.getBindingsPrice()}if(this.DEBUG){g+="\n "+f+": "+r;++f}var t=r*((this.Taxrate/100)+1);var a=this.doRound(r,4);if(this.DisplayNetto){var e=this.padoutPrice(a);this.DisplayNetto.innerHTML=e;this.resizeDisplay(this.DisplayNetto,e.length)}if(this.DisplayMwst){var e=this.padoutPrice(this.doRound(t-r,4));this.DisplayMwst.innerHTML=e;this.resizeDisplay(this.DisplayMwst,e.length)}if(this.DisplayBrutto){var e=this.padoutPrice(this.doRound(t,4));this.DisplayBrutto.innerHTML=e;this.resizeDisplay(this.DisplayBrutto,e.length)}if(-1!=this.Surcharge){var f=this.doRound(a+this.Surcharge,2);var o=this.doRound(f*((this.Taxrate/100)+1),4);if(this.DisplaySurchargeNetto){this.DisplaySurchargeNetto.innerHTML=this.padoutPrice(f)}if(this.DisplaySurchargeMwst){this.DisplaySurchargeMwst.innerHTML=this.padoutPrice(o-f)}if(this.DisplaySurchargeBrutto){this.DisplaySurchargeBrutto.innerHTML=this.padoutPrice(o)}}if(0<r){for(var k=0;k<this.showIfPrice.length;++k){this.showIfPrice[k].style.visibility="visible";this.showIfPrice[k].style.display="block"}}if(this.DEBUG){alert(g)}return true};SRJSPreisrechner.prototype.getBindingsPrice=function(){var a=0;if(this.useBindings()){var b=this.getQuantity()/this.PPB;a=b*this.BindPrices[this.BSelect.selectedIndex]}return a};SRJSPreisrechner.prototype.setQuantity=function(b,a){switch(b){case this.TEXT:this.QType=b;break;case this.SELECT:this.QType=b;break;default:alert("Unbekannter Feld-Typ: "+b+"\nBekannte Feld-Typen sind:\n           SRJSPreisrechner::TEXT\n       und SRJSPreisrechner::SELECT")}this.QElement=this.FORM.elements[a]};SRJSPreisrechner.prototype.setPagesPerBinding=function(b,c,a){switch(b){case this.TEXT:this.PPBType=b;break;default:alert("Unbekannter Feld-Typ: "+b+"\nBekannte Feld-Typen sind:\n           SRJSPreisrechner::TEXT\n       und SRJSPreisrechner::SELECT")}this.PPBElement=this.FORM.elements[c];if(null!=a){this.BSelect=this.FORM.elements[a]}};SRJSPreisrechner.prototype.addSomeOfThePagesAditional=function(b,d,c){this.someOfThePages[a]=new Object();switch(b){case this.TEXT:this.someOfThePages[a]["field"]=b;break;default:alert("Unbekannter Feld-Typ: "+b+"\nBekannte Feld-Typen sind:\n           SRJSPreisrechner::TEXT\n       und SRJSPreisrechner::SELECT")}var a=this.someOfThePages.length;this.someOfThePages[a]=new Object();this.someOfThePages[a]["field"]=this.FORM.elements[d];this.someOfThePages[a]["price"]=c};SRJSPreisrechner.prototype.getQuantity=function(){switch(this.QType){case this.TEXT:this.QTY=this.checkInteger(this.QElement.value);break;case this.SELECT:this.QTY=this.Prices[this.QElement.selectedIndex][0];break;default:alert("Unbekannter Feld-Typ: "+type+"\nBekannte Feld-Typen sind:\n           SRJSPreisrechner::TEXT\n       und SRJSPreisrechner::SELECT")}this.getBindPages();if(null!=this.PPBElement){this.QTY=this.QTY*this.PPB}return this.QTY};SRJSPreisrechner.prototype.getBindPages=function(){this.PPB=0;switch(this.PPBType){case this.TEXT:if(null!=this.PPBElement){this.PPB+=parseInt(this.checkInteger(this.PPBElement.value))}break;default:alert("Unbekannter Feld-Typ: "+PPBType+"\nBekannte Feld-Typen sind:\n           SRJSPreisrechner::TEXT\n       und SRJSPreisrechner::SELECT")}return this.PPB};SRJSPreisrechner.prototype.setQm=function(b,c,a){switch(b){case this.TEXT:this.QMType=b;break;default:alert("Nicht unterstützter Feld-Typ: "+PPBType+"\nUnterstützte Feld-Typen sind:\n           SRJSPreisrechner::TEXT")}this.QmWElement=this.FORM.elements[c];this.QmHElement=this.FORM.elements[a]};SRJSPreisrechner.prototype.getQm=function(){this.QM=1;if(null!=this.QmWElement&&null!=this.QmHElement){var b=1;var a=1;switch(this.QMType){case this.TEXT:b=parseFloat(this.checkInteger(this.QmWElement.value));a=parseFloat(this.checkInteger(this.QmHElement.value));this.QM=(b*a)/1000000;break;default:alert("Nicht unterstützter Feld-Typ: "+PPBType+"\nUnterstützte Feld-Typen sind:\n           SRJSPreisrechner::TEXT")}}return this.QM};SRJSPreisrechner.prototype.addBindungspreis=function(b){var a=parseFloat(this.FloatExchange.exec(b));this.BindPrices.push(a)};SRJSPreisrechner.prototype.addStaffelpreis=function(d,c){if(!d){d=Number.MAX_VALUE}var a=parseInt(this.IntExchange.exec(d));var b=parseFloat(this.FloatExchange.exec(c));this.Prices.push(new Array(a,b))};SRJSPreisrechner.prototype.addSelect=function(e,a){var b=new Array();if(arguments){for(var d=2;d<arguments.length;++d){var c=parseFloat(arguments[d]);if(isNaN(c)){alert("AddSelect: j isNaN!")}b.push(c)}}else{for(var d=2;d<srjsprechnerAddSelect.arguments.length;++d){var c=parseFloat(srjsprechnerAddSelect.arguments[d]);if(isNaN(c)){alert("AddSelect: j isNaN!")}b.push(parseFloat(c))}}switch(e){case this.SUMMAND:this.SumSelects[""+a]=b;break;case this.EQUAL:this.EquSelects[""+a]=b;break;case this.FACTOR:this.FacSelects[""+a]=b;break;case this.QMQTY:this.QmQtySelects[""+a]=b;break;default:alert("addSelect: Nicht unterstützter Operator-Typ: "+e+"\nUnterstützte Operator-Typen sind:\n           SRJSPreisrechner::SUMMAND,\n           SRJSPreisrechner::FACTOR,\n       und SRJSPreisrechner::EQUAL")}};SRJSPreisrechner.prototype.nettoDisplay=function(a){this.DisplayNetto=document.getElementById(a)};SRJSPreisrechner.prototype.mwstDisplay=function(a){this.DisplayMwst=document.getElementById(a)};SRJSPreisrechner.prototype.bruttoDisplay=function(a){this.DisplayBrutto=document.getElementById(a)};SRJSPreisrechner.prototype.surchargeNettoDisplay=function(a){this.DisplaySurchargeNetto=document.getElementById(a)};SRJSPreisrechner.prototype.surchargeMwstDisplay=function(a){this.DisplaySurchargeMwst=document.getElementById(a)};SRJSPreisrechner.prototype.surchargeBruttoDisplay=function(a){this.DisplaySurchargeBrutto=document.getElementById(a)};SRJSPreisrechner.prototype.setSurcharge=function(a){this.Surcharge=a};SRJSPreisrechner.prototype.checkInteger=function(b){if(!b){b=0}var c=this.IntExchange.exec(b);var d="";for(var a=1;a<c.length;a++){if(c[a]){d=d+""+c[a]}}c=parseInt(d);if(isNaN(c)){return 0}else{return c}};SRJSPreisrechner.prototype.checkFloat=function(d){if(!d){d=0}var b=this.FloatExchange.exec(d);var c="";for(var a=1;a<b.length;a++){if(b[a]){c=c+""+b[a]}}return c};SRJSPreisrechner.prototype.doRound=function(a,b){return Math.round(a*Math.pow(10,b))/Math.pow(10,b)};SRJSPreisrechner.prototype.padoutPrice=function(b){if(!b){b=0}b=b.toFixed(2);var c=Math.floor(b);var a=Math.floor(b*100)+"";if("0"==a){a="00"}else{a=a.substr(a.length-2,a.length)}return""+c+","+a};SRJSPreisrechner.prototype.setTaxRate=function(a){this.Taxrate=a};SRJSPreisrechner.prototype.addExpander=function(b){var a=document.getElementById(b);if(a){this.showIfPrice.push(a)}};SRJSPreisrechner.prototype.resizeDisplay=function(a,b){b-=1;if(a.setAttribute){a.setAttribute("size",b)}else{a.size=b}};
