if (typeof(Number)!='undefined'&&typeof(Number.prototype)!='undefined'){
  if (typeof(Number.prototype.toFixed)=='undefined'){

    function Number_toFixed(d) {
      var n = this;
      d = d || 2;
      var f = Math.pow(10, d);
      n = Math.round(n * f) / f;
      n += Math.pow(10, - (d + 1));
      n += '';
      return d == 0 ? n.substring(0, n.indexOf('.')) :
        n.substring(0, n.indexOf('.') + d + 1);
    }

    Number.prototype.toFixed = Number_toFixed;
  }
}

function ObjCurrency() {
//alert('ObjCurrency in');
 var arrCurr = new Array(new Array("EUR","BPD","USD")
                        ,new Array(1,0.66,1.32));

 this.currSign = function currSign(_lang) {
   return arrCurr[0][_lang];
 }

 this.ValueInCurrency = function ValueInCurrency(_value, _lang) {
   return (Number(_value) * arrCurr[1][_lang]).toFixed(2);
 }

 this.length = function length() {
  return arrCurr[0].length;
 }
 //alert('ObjCurrency out');
 return this;
}

// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// nvl
// replaces null-values with the _default value
// param  : _value   the value checked against null
// param  : _default the value returned in case of null
// return : String
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
function nvl(_value,_default) {
//alert('nvl in _value='+_value+', _default='+_default);
  var ret = ( !_value || _value == "" || _value == "_EMPTY" ) ? _default : _value;

//alert('nvl out ' + ret);
  return ret;
}

function toINT(_anzahl) {
 var anzahl = "";

 anzahl = parseInt(_anzahl); //Umwandlung in Int

 if (isNaN(anzahl)) {
   anzahl = 0;
 }
 return anzahl;
}

// ****************************************************************
// Umrechnung von Fremdwaehrungen und ergaenzen des Waehrungs-
// zeichens
//
// benutzt :
// ****************************************************************
function valuta(x,curr,plain,before,after) {
//alert('valuta in ');
  var base=(objCurr.currSign(0) == objCurr.currSign(curr)), s="";
  if (!base)  x=objCurr.ValueInCurrency(x,curr);
  if (before) s=s+before;

  s=s+ (Math.round(x*100)/100).toFixed(2);
  if (!plain) s=s+'&nbsp;<small>'+ objCurr.currSign(curr) +'</small>';
  if (after)  s=s+after;

  return(s);
}
