diff --git a/gulliver/js/form/core/form.js b/gulliver/js/form/core/form.js index 49451c0ca..e0d891fe2 100755 --- a/gulliver/js/form/core/form.js +++ b/gulliver/js/form/core/form.js @@ -2219,30 +2219,7 @@ function G() //Gets number without mask this.getValue = function (elem) { - var arrayNum = elem.value().split(""); - var num = ""; - - for (var i = 0; i <= arrayNum.length - 1; i++) { - switch (arrayNum[i]) { - case "0": - case "1": - case "2": - case "3": - case "4": - case "5": - case "6": - case "7": - case "8": - case "9": - num = num + arrayNum[i]; - break; - case elem.comma_separator: - num = num + "."; - break; - } - } - - return num; + return getNumericValue(elem.value(), ((typeof elem.comma_separator != "undefined")? elem.comma_separator : "")); }; //DEPRECATED @@ -3085,13 +3062,13 @@ var validateForm = function(sRequiredFields) { var id = elem.id + "_"; if (!document.getElementById(id)) { - var input2 = document.createElement("input"); - input2.type = "hidden"; - input2.id = id; - input2.name = elem.name; - input2.value = elem.value; + var inputAux = document.createElement("input"); + inputAux.type = "hidden"; + inputAux.id = id; + inputAux.name = elem.name; + inputAux.value = elem.value; - frm.appendChild(input2); + frm.appendChild(inputAux); } } } @@ -3303,37 +3280,31 @@ function sumaformu(ee,fma,mask){ } for(i_elements=0;i_elements < objectsWithFormula.length; i_elements++){ - - for(i_elements2=0;i_elements2 < objectsWithFormula[i_elements].theElements.length;i_elements2++){ if(objectsWithFormula[i_elements].theElements[i_elements2]==myId) { + var formula = objectsWithFormula[i_elements].fma; + var ans = objectsWithFormula[i_elements].ee; + var theelemts = objectsWithFormula[i_elements].theElements; - //calValue(afma,nfma,ee,mask); + //Evaluate the formula and replace the value in field + for (var i = 0; i <= theelemts.length - 1; i++) { + var elem = getField(theelemts[i]); + var elemAttribute = elementAttributesNS(elem, "pm"); + var elemValue = getNumericValue(elem.value, ((typeof elemAttribute.decimal_separator != "undefined")? elemAttribute.decimal_separator : "")); - formula = objectsWithFormula[i_elements].fma; - ans = objectsWithFormula[i_elements].ee; - theelemts=objectsWithFormula[i_elements].theElements; - - nfk = ''; - //to replace the field for the value and to evaluate the formula - var symbol = mask.replace(/[0-9.#,-_\s]/g,''); - for (var i=0; i < theelemts.length; i++){ - if(!isnumberk(theelemts[i])){//alert(getField(theelemts[i]).name); - val = (getField(theelemts[i]).value == '')? 0 : getField(theelemts[i]).value.replace(/[$a-zA-Z\s]/g,''); - formula=formula.replace(theelemts[i],val); + formula = formula.replace(theelemts[i], ((elemValue == "")? 0 : parseFloat(elemValue))); } - } - if (isnumberk(getField(theelemts['0']).value)) - getField(theelemts['0']).value = symbol+ ' '+getField(theelemts['0']).value; - var rstop=eval(formula); - if(mask!=''){ - putmask(rstop,mask,ans); - }else{ - ans.value=rstop; - } + var result = eval(formula); + if (mask != "") { + var elemAttribute = elementAttributesNS(ans, "pm"); + + putFieldNumericValue(ans, result, mask, ((typeof elemAttribute.decimal_separator != "undefined")? elemAttribute.decimal_separator : "")); + } else { + ans.value = result; + } } } } @@ -3341,99 +3312,6 @@ function sumaformu(ee,fma,mask){ } } -function calValue(afma,nfma,ans,mask){ - theelemts=nfma.split(" "); - //to replace the field for the value and to evaluate the formula - for (var i=0; i < theelemts.length; i++){ - if(!isnumberk(theelemts[i])){//alert(getField(theelemts[i]).name); - if(getField(theelemts[i]).value){ - nfk=afma.replace(theelemts[i],getField(theelemts[i]).value); - afma=nfk; - } - } - } - - //ans.value=eval(nfk); - var rstop=eval(nfk); - if(mask!=''){ - putmask(rstop,mask,ans); - }else{ - //alert('without mask'); - ans.value=rstop; - } - -} - -function isnumberk(texto){ - var numberk="0123456789."; - var letters="abcdefghijklmnopqrstuvwxyz"; - var i=0; - var sw=1; - - //for(var i=0; i 1) { - maskDecimal=maskDecimal[1].split("."); - } else { - maskDecimal=mask.split("."); - } - numDecimal=maskDecimal[1].length; - - ans.value=numb.toFixed(numDecimal); - var symbol = mask.replace(/[0-9.#,-_\s]/g,''); - if (isnumberk(ans.value)) ans.value = symbol+' '+ans.value; - return; - var nnum='',i=0,j=0; - //we get the number of digits - cnumb=numb.toString(); - cd = parseInt(Math.log(numb)/Math.LN10+1); - //now we're runing the mask and cd - fnb=cnumb.split("."); - maskp=mask.split(";"); - mask = (maskp.length > 1)? maskp[1]:mask; - while(i < numb.toString().length && j < mask.length){ - //alert(cnumb.charAt(i)+' ** '+mask.charAt(i)); - switch(mask.charAt(j)){ - case '#': - if(cnumb.charAt(i)!='.') { - nnum+=cnumb.charAt(i).toString(); - i++; - } - break; - - case '.': - nnum+=mask.charAt(j).toString(); - i=cd+1; - cd=i +4; - break; - - default: - //alert(mask.charAt(i)); - nnum+=mask.charAt(j).toString(); - break; - } - - j++; - } - - ans.value=nnum; - -} - function showRowsById(aFields){ for(i=0; ihtmlentities($onkeypress, ENT_COMPAT, 'utf-8').'" '; $html .= $this->NSDefaultValue().' '; $html .= $this->NSRequiredValue().' '; - $html .= 'pm:decimal_separator="' + $this->comma_separator + '" '; + $html .= 'pm:decimal_separator="' . $this->comma_separator . '" '; $html .= '/>'; }else{ //VIEW MODE $html .= $this->htmlentities($value, ENT_QUOTES, 'utf-8'); @@ -1713,7 +1713,7 @@ class XmlForm_Field_Currency extends XmlForm_Field_SimpleText { $html .= $this->NSDefaultValue().' '; $html .= $this->NSRequiredValue().' '; $html .= $this->NSGridType().' '; - $html .= 'pm:decimal_separator="'.$this->comma_separator.'" '; + $html .= 'pm:decimal_separator="' . $this->comma_separator . '" '; $html .= '/>'; }else{ //VIEW MODE $html .= $this->htmlentities($value, ENT_COMPAT, 'utf-8'); @@ -1829,7 +1829,7 @@ class XmlForm_Field_Percentage extends XmlForm_Field_SimpleText { $html .= 'onkeypress="'.$this->htmlentities($onkeypress, ENT_COMPAT, 'utf-8').'" '; $html .= $this->NSDefaultValue().' '; $html .= $this->NSRequiredValue().' '; - $html .= 'pm:decimal_separator="' + $this->comma_separator + '" '; + $html .= 'pm:decimal_separator="' . $this->comma_separator . '" '; $html .= '/>'; }else{ //VIEW MODE $html .= $this->htmlentities($value, ENT_COMPAT, 'utf-8'); diff --git a/workflow/engine/controllers/main.php b/workflow/engine/controllers/main.php index 12c80f1c4..c31f25ab0 100644 --- a/workflow/engine/controllers/main.php +++ b/workflow/engine/controllers/main.php @@ -192,7 +192,10 @@ class Main extends Controller $availableLangArray = $this->getLanguagesList(); - G::LoadClass ('serverConfiguration'); + G::LoadClass("serverConfiguration"); + + $sflag = 0; + if (($nextBeatDate = $this->memcache->get('nextBeatDate')) === false) { //get the serverconf singleton, and check if we can send the heartbeat $oServerConf = & serverConf::getSingleton ();