7 <input type="hidden" name="input_name" value="[% HTML.escape(input_name) %]">
8 <input type="hidden" name="input_id" value="[% HTML.escape(input_id) %]">
11 <tr><td>[% 'Please insert object dimensions below.' | $T8 %]</td></tr>
17 <tr class="listheading">
18 [% FOREACH col = HEADER %]
19 <th nowrap class="listheading">[% col.column_title %]</a></th>
23 [% FOREACH row = VARIABLES %]
24 <tr class="listrow[% loop.count % 2 %]">
25 <td>[% HTML.escape(row.description) %]:</td><td><input id="[% row.name %]" name="[% row.name %]" value=""></td>
26 <td>[% HTML.escape(row.unit) %]</td>
34 <button type="button" onclick="calculate_qty()">[% 'Calculate' | $T8 %]</button>
37 <script type="text/javascript">
38 function calculate_qty() {
39 [%- FOREACH row = VARIABLES %]
40 var [% row.name %] = parse_amount('[% MYCONFIG.numberformat %]', document.getElementsByName("[% row.name %]")[0].value);
42 var result = [% formel %];
43 result = number_format(result, 2, '[% MYCONFIG.numberformat %]');
44 if (document.Form.input_id.value) {
45 window.opener.document.getElementById(document.Form.input_id.value).value = result;
47 window.opener.document.getElementsByName(document.Form.input_name.value)[0].value = result;
52 function parse_amount(numberformat, amount) {
53 if (numberformat == '1.000,00' || numberformat == '1000,00')
54 amount = amount.replace(/\./g, "").replace(/,/, ".");
55 if (numberformat == "1'000.00")
56 amount = amount.replace(/\'/g, '');
57 return amount.replace(/,/g, '');
60 function number_format(number, precision, numberformat) {
61 number = Math.round( number * Math.pow(10, precision) ) / Math.pow(10, precision);
62 var nf = numberformat.replace(/\d/g, '').split('').reverse();
66 str_number = number+"";
67 arr_int = str_number.split(".");
68 if(!arr_int[0]) arr_int[0] = "0";
69 if(!arr_int[1]) arr_int[1] = "";
70 if(arr_int[1].length < precision) {
71 nachkomma = arr_int[1];
72 for(i=arr_int[1].length+1; i <= precision; i++) {
75 arr_int[1] = nachkomma;
77 if(th_sep != "" && arr_int[0].length > 3) {
78 raw_arr_int = arr_int[0];
80 for(j = 3; j < raw_arr_int.length ; j+=3) {
81 arr_int[0] = th_sep + raw_arr_int.slice(raw_arr_int.length - j, raw_arr_int.length - j + 3) + arr_int[0] + "";
83 str_first = raw_arr_int.substr(0, (raw_arr_int.length % 3 == 0) ? 3 : (raw_arr_int.length % 3));
84 arr_int[0] = str_first + arr_int[0];
86 return arr_int[0] + sep + arr_int[1];