var usableNumbers = "1234567890";
var hiba = "hiba";
function counting(id) {
 var brutto = "0";
 var checked = document.getElementById("hlm_pro_"+id).checked;
 if (checked) {
  var p = document.getElementById("hlm_price_"+id).value;
  var t = document.getElementById("hlm_tax_"+id).value;
  var d = document.getElementById("hlm_count_"+id).value;
  if (!isNumber(d)) brutto=hiba;
  else brutto = addCommas((p*d)*(1+t/100));
 }
 var sum = 0;
  var inputs = document.getElementsByTagName("input");
  for(var i = 0; i < inputs.length; i++)  {
   if (inputs[i].name.substring(0, 8) == "hlm_pro_") {
    if (inputs[i].checked) {
     if (!isNumber(inputs[i]))  {
      sum = hiba;
      break;
     }
     else {
      var nr = inputs[i].name.substring(8);
      var tax = document.getElementById("hlm_tax_"+nr).value;
      var price = document.getElementById("hlm_price_"+nr).value;
      var count = document.getElementById("hlm_count_"+nr).value;
      sum += (1 + tax/100) * (price * count);
     }
    }
   }
  }  
 if (sum != hiba) sum = addCommas(sum);
 document.getElementById("hlm_sum").innerHTML = sum;
 document.getElementById("hlm_br_"+id).innerHTML = brutto; 
}
function copyAddress()
{
  document.hlm_order.InvoiceName.value = document.hlm_order.TransferName.value;
  document.hlm_order.InvoicePostCode.value = document.hlm_order.TransferPostCode.value;
  document.hlm_order.InvoiceCity.value = document.hlm_order.TransferCity.value;
  document.hlm_order.InvoiceStreet.value = document.hlm_order.TransferStreet.value;
}
function send_hlm_order()
{
 if (trim(document.hlm_order.Name.value).length == 0) {
  alert("Az ügyintéző nevét, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.Mail.value).length == 0) {
  alert("Az ügyintéző e-mail címét, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.Tel.value).length == 0) {
  alert("Az ügyintéző telefonszámát, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.TransferName.value).length == 0) {
  alert("A szállítási cím nevét kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.TransferPostCode.value).length == 0) {
  alert("A szállítási cím irányítószámát, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.TransferCity.value).length == 0) {
  alert("A szállítási cím települését, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.TransferStreet.value).length == 0) {
  alert("A szállítási cím utca/házszámát, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.InvoiceName.value).length == 0) {
  alert("A számlázási cím nevét, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.InvoicePostCode.value).length == 0) {
  alert("A számlázási cím irányítószámát, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.InvoiceCity.value).length == 0) {
  alert("A számlázási cím települését, kérjük adja meg!");
  return;
 }
 if (trim(document.hlm_order.InvoiceStreet.value).length == 0) {
  alert("A számlázási cím utca/házszámát, kérjük adja meg!");
  return;
 }
 if (!isProductFilledOK()) return;
 document.hlm_order.submit();
}
//---------------------------------------------------------
function isProductFilledOK()
{
 var inputs = document.getElementsByTagName("input");
 var count = 0;
 for(var i = 0; i < inputs.length; i++)  {
  if (inputs[i].name.substring(0, 8) == "hlm_pro_") {
   if (inputs[i].checked) count++;
   if (inputs[i].checked && !isOK(inputs[i])) {
    alert("Kérjük, hogy a kiválasztott termék darabszáma mezőbe helyes, nullánál nagyobb számot adjon meg!");
    return false;
   }
  }
 }
 if (count == 0) {
  alert("Kérjük, legalább egy tételt vásároljon meg!");
  return false;
 }
 return true;
}

function isOK(obj)
{
 var str = obj.name.substring(8);
 var db = document.getElementById("hlm_count_"+str).value;
 var correctNr = isNumber(db);
 if (!correctNr || correctNr && db <= 0) return false;
 return true;
}

function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
function isNumber(x)
{
 for(var i = 0; i < x.length; i++) {
  if (usableNumbers.indexOf(x.charAt(i)) < 0) {
   return false;
  }
 }
 return true;
}
function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ' ' + '$2');
	}
	return x1 + x2;
}
