function ckCombination(){ var comb_result=0; var comb_selected=0; var arr_convertion=new Array(); var arr_convertion_code=new Array(); var convertion=1; var convertion_code="gr"; price_adds=0; var regex_number=/^[0-9]+$/; var price_temp=0; if(getE("txtStock").value>0){ for(var i=0;i0){ for(var k=1;k<=getE("txtTotalGroupCombination").value;k++){ if(getE("cbAttribute_"+k).value==comb[i][0][j]){ comb_result++; } } } } if(comb_result0){ getE("combNotFoundExplanation").innerHTML="Ketersediaan produk: Tidak ada stok produk dengan spesifikasi ini. Pilihlah produk dengan spesifikasi lainnya."; } getE("combShowHide").style.visibility="hidden"; getE("combPrice").innerHTML="Rp "+number_format(final_price,(regex_number.test(final_price)? 0:2),",",".")+""; } else { getE("combNotFoundExplanation").innerHTML=""; getE("combShowHide").style.visibility="visible"; if(getE("txtUseCombination").value==1){ weight=comb[comb_selected][3]/convertion; price_adds=Math.round((comb[comb_selected][2]*1)*100)/100; price_temp=Math.round((final_price+price_adds)*100)/100; getE("combPrice").innerHTML="Rp "+number_format(price_temp,(regex_number.test(price_temp)? 0:2),",",".")+((price_adds>0)?" (+Rp "+number_format(price_adds,(regex_number.test(price_adds)? 0:2),",",".")+")":""); } } for(var i=0;i(1/arr_convertion[i])){ convertion=(1/arr_convertion[i]); convertion_code=arr_convertion_code[i]; } } weight=weight/convertion; getE("combWeight").innerHTML=weight+" "+convertion_code; } function number_format (number, decimals, dec_point, thousands_sep) { var n = number, prec = decimals; var toFixedFix = function (n,prec) { var k = Math.pow(10,prec); return (Math.round(n*k)/k).toString(); }; n = !isFinite(+n) ? 0 : +n; prec = !isFinite(+prec) ? 0 : Math.abs(prec); var sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep; var dec = (typeof dec_point === 'undefined') ? '.' : dec_point; var s = (prec > 0) ? toFixedFix(n, prec) : toFixedFix(Math.round(n), prec); //fix for IE parseFloat(0.55).toFixed(0) = 0; var abs = toFixedFix(Math.abs(n), prec); var _, i; if (abs >= 1000) { _ = abs.split(/\D/); i = _[0].length % 3 || 3; _[0] = s.slice(0,i + (n < 0)) + _[0].slice(i).replace(/(\d{3})/g, sep+'$1'); s = _.join(dec); } else { s = s.replace('.', dec); } var decPos = s.indexOf(dec); if (prec >= 1 && decPos !== -1 && (s.length-decPos-1) < prec) { s += new Array(prec-(s.length-decPos-1)).join(0)+'0'; } else if (prec >= 1 && decPos === -1) { s += dec+new Array(prec).join(0)+'0'; } return s; }