X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=js%2Futils.js;h=08334e2fb7a225d8357150edf30aa944826acb49;hb=406fee129771496f26ef91c0a25d487c7a77c054;hp=c5aec13332dea4100dd439ad3cd98f7f5225249b;hpb=1571869d54be48452fdbe08f25130972ff0a7b5a;p=fa-stable.git diff --git a/js/utils.js b/js/utils.js index c5aec133..08334e2f 100644 --- a/js/utils.js +++ b/js/utils.js @@ -1,11 +1,11 @@ /********************************************************************** Copyright (C) FrontAccounting, LLC. - Released under the terms of the GNU General Public License, GPL, - as published by the Free Software Foundation, either version 3 + Released under the terms of the GNU General Public License, GPL, + as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License here . ***********************************************************************/ function set_mark(img) { @@ -31,8 +31,8 @@ function disp_msg(msg, cl) { // - input object - all form values are also submited // - arbitrary string - POST var trigger with value 1 is added to request; // if form parameter exists also form values are submited, otherwise -// request is directed to current location -// +// request is directed to current location +// JsHttpRequest.request= function(trigger, form, tout) { // if (trigger.type=='submit' && !validate(trigger)) return false; tout = tout || 10000; // default timeout value @@ -48,27 +48,27 @@ JsHttpRequest._request = function(trigger, form, tout, retry) { var url = trigger.href; if (trigger.id) content[trigger.id] = 1; } else { - var submitObj = typeof(trigger) == "string" ? + var submitObj = typeof(trigger) == "string" ? document.getElementsByName(trigger)[0] : trigger; - + form = form || (submitObj && submitObj.form); var upload = form && form.enctype=='multipart/form-data'; - - var url = form ? form.getAttribute('action') : + + var url = form ? form.getAttribute('action') : window.location.toString(); var content = this.formInputs(trigger, form, upload); if (!form) url = url.substring(0, url.indexOf('?')); - + if (!submitObj) { content[trigger] = 1; } } // this is to avoid caching problems content['_random'] = Math.random()*1234567; - + var tcheck = setTimeout( function() { for(var id in JsHttpRequest.PENDING) { @@ -89,12 +89,12 @@ JsHttpRequest._request = function(trigger, form, tout, retry) { JsHttpRequest.query( (upload ? "form." : "")+"POST "+url, // force form loader content, - // Function is called when an answer arrives. + // Function is called when an answer arrives. function(result, errors) { // Write the answer. var newwin = 0; if (result) { - for(var i in result ) { + for(var i in result ) { atom = result[i]; cmd = atom['n']; property = atom['p']; @@ -141,7 +141,7 @@ JsHttpRequest._request = function(trigger, form, tout, retry) { window.scrollTo(0,0); //document.getElementById('msgbox').scrollIntoView(true); // Restore focus if we've just lost focus because of DOM element refresh - if(!newwin) { + if(!newwin) { setFocus(); } } @@ -157,7 +157,7 @@ JsHttpRequest._request = function(trigger, form, tout, retry) { if (typeof(inp) == "string") submitObj = document.getElementsByName(inp)[0]||inp; - + objForm = objForm || (submitObj && submitObj.form); if (objForm) @@ -168,7 +168,7 @@ JsHttpRequest._request = function(trigger, form, tout, retry) { var el = formElements[i]; var name = el.name; if (!el.name) continue; - if(upload) { // for form containing file inputs collect all + if(upload) { // for form containing file inputs collect all // form elements and add value of trigger submit button // (internally form is submitted via form.submit() not button click()) if (submitObj.type=='submit' && el==submitObj) @@ -178,8 +178,8 @@ JsHttpRequest._request = function(trigger, form, tout, retry) { } } if (el.type ) - if( - ((el.type == 'radio' || el.type == 'checkbox') && el.checked == false) + if( + (el.type == 'radio' && el.checked == false) || (el.type == 'submit' && (!submitObj || el.name!=submitObj.name))) continue; if (el.disabled && el.disabled == true) @@ -202,9 +202,13 @@ JsHttpRequest._request = function(trigger, form, tout, retry) { q[name] = el; else { - q[name] = el.value; + if (el.type == 'checkbox') { + q[name] = (el.checked == true); + } else { + q[name] = el.value; + } } - } + } } } return q; @@ -224,7 +228,7 @@ function price_format(post, num, dec, label, color) { decsize = Math.pow(10, dec); num = Math.floor(num*decsize+0.50000000001); cents = num%decsize; - num = Math.floor(num/decsize).toString(); + num = Math.floor(num/decsize).toString(); for( i=cents.toString().length; ip0.y)) || (dir==38 && (p.yp0.y)) || (dir==38 && (p.yp0.x)))) { var l1 = (p.y-p0.y)*(p.y-p0.y)+(p.x-p0.x)*(p.x-p0.x); if ((l1 -1; +}