function formatNumber(nStr)
{
  var decimalPoint = ".";
  var groupDelimiter = ",";
  if (document.getElementsByTagName("html")[0].lang == "en") {
    decimalPoint = ".";
    groupDelimiter = ",";
  }
  else if (document.getElementsByTagName("html")[0].lang == "de") {
    decimalPoint = ",";
    groupDelimiter = ".";
  }

  nStr += '';
  x = nStr.split('.');
  x1 = x[0];
  x2 = x.length > 1 ? decimalPoint + x[1] : '';
  var rgx = /(\d+)(\d{3})/;
  while (rgx.test(x1)) {
    x1 = x1.replace(rgx, '$1' + groupDelimiter + '$2');
  }
  return x1 + x2;
}

var Storeitem = {
    init: function(obj)
    {
        var storeitem    = obj;
        var inElements = storeitem.getElementsByTagName("input");
        var resultArea = storeitem.getElementsByTagName("span");
        if (inElements.length > 3) {
          var amountItem   = inElements[0];
          var priceperitem = inElements[3].value;
          var result       = resultArea[3];
          Storeitem.calculatePrice(amountItem.value, priceperitem, result);

          addEvent(amountItem, "change", function(){Storeitem.calculatePrice(amountItem.value, priceperitem, result)}, false);
        }
    },
    calculatePrice: function(amount, priceperitem, result)
    {
        var sum = amount*priceperitem;
        result.innerHTML = formatNumber(sum.toFixed(2));
    }
}

function contactSelectionChanged()
{

    var selection = document.getElementById("contactSelection");
    if (selection != null) {
      var pricingDetails = document.getElementById("pricingDetails");
      if (selection.value.substr(selection.value.length - 1, 1) == "_") {
        pricingDetails.style.visibility = "";
      }
      else {
        pricingDetails.style.visibility = "hidden";
      }
    }
}

function initStoreitems()
{
    if (document.body.className == "store")
    {
        var storeitems = document.getElementsByTagName("form");
        for (var i=0; i < storeitems.length; i++)
        {
            var current_item = storeitems[i];
            if (current_item.className == "price")
            {
                Storeitem.init(current_item);
            }
        }
    }
    contactSelectionChanged();
}

addEvent(window, 'load', initStoreitems, false);
