BUG 0000 "Problem with negative character in masks" SOLVED

- Problem with negative character in masks
- Solved problem with negative character in masks, if the negative
  character is not in the same mask is accepted data input by keyboard
* Available from version ProcessMaker-2.0.46
This commit is contained in:
Victor Saisa Lopez
2013-03-14 19:01:24 -04:00
parent bb1bea3cdd
commit 8d748e650c
3 changed files with 113 additions and 73 deletions

View File

@@ -998,9 +998,12 @@ function G_Text(form, element, name)
currentSel = dataWOMask.cursor; currentSel = dataWOMask.cursor;
cursorStart = currentSel.selectionStart; cursorStart = currentSel.selectionStart;
cursorEnd = currentSel.selectionEnd; cursorEnd = currentSel.selectionEnd;
action = 'mask';
swPeriod = false; var action = "mask";
switch(keyCode){ var swPeriod = false;
var i = 0;
switch (keyCode) {
case 0: case 0:
action = 'none'; action = 'none';
break; break;
@@ -1036,71 +1039,86 @@ function G_Text(form, element, name)
action = 'move'; action = 'move';
break; break;
case 45: case 45:
if (me.mType == 'currency' || (me.mType == 'text' && (me.validate == 'Real' || me.validate == 'Int'))) { if (me.mType == "currency" || (me.mType == "text" && (me.validate == "Real" || me.validate == "Int"))) {
newValue = currentValue.substring(0, currentValue.length).split(''); newValue = currentValue.substring(0, currentValue.length).split("");
for (var numI = 0; newValue.length > numI; numI++) {
var campVal = newValue[numI]; if (newValue.length > 0) {
if ((typeof(campVal) === 'number' || typeof(campVal) === 'string') && (campVal !== '') && (!isNaN(campVal))) { for (i = 0; i <= newValue.length - 1; i++) {
newValue = currentValue.substring(0, numI-1); var campVal = newValue[i];
newValue += '-' + currentValue.substring(numI);
numI = newValue.length + 1; if ((typeof campVal == "number" || typeof campVal == "string") && campVal != "" && !isNaN(campVal)) {
newCursor = cursorStart+1; newValue = currentValue.substring(0, i - 1);
} else { newValue = newValue + "-" + currentValue.substring(i);
if (campVal == '-') { i = newValue.length + 1;
newValue = currentValue.substring(0, numI-1); newCursor = cursorStart + 1;
newValue += currentValue.substring(numI+1); } else {
newCursor = cursorStart-1; if (campVal == "-") {
numI = newValue.length + 1; newValue = currentValue.substring(0, i - 1);
newValue = newValue + currentValue.substring(i + 1);
newCursor = cursorStart - 1;
i = newValue.length + 1;
}
}
}
if (newValue.join) {
newValue = newValue.join("");
}
} else {
//default
newKey = String.fromCharCode(keyCode);
newValue = currentValue.substring(0, cursorStart);
newValue = newValue + newKey;
newValue = newValue + currentValue.substring(cursorEnd, currentValue.length);
newCursor = cursorStart + 1;
} }
}
} }
if (newValue.join) { break;
newValue = newValue.join('');
}
}
break;
default: default:
newKey = String.fromCharCode(keyCode); newKey = String.fromCharCode(keyCode);
newValue = currentValue.substring(0, cursorStart); newValue = currentValue.substring(0, cursorStart);
newValue += newKey; newValue = newValue + newKey;
newValue += currentValue.substring(cursorEnd, currentValue.length); newValue = newValue + currentValue.substring(cursorEnd, currentValue.length);
newCursor = cursorStart + 1; newCursor = cursorStart + 1;
break; break;
} }
if (newCursor < 0) newCursor = 0;
if (newCursor < 0) {
newCursor = 0;
}
if (keyCode != 8 && keyCode != 46 && keyCode != 35 && keyCode != 36 && keyCode != 37 && keyCode != 39){ if (keyCode != 8 && keyCode != 46 && keyCode != 35 && keyCode != 36 && keyCode != 37 && keyCode != 39){
testData = dataWOMask.result; var testData = dataWOMask.result;
tamData = testData.length; var tamData = testData.length;
cleanMask = me.getCleanMask(); var cleanMask = me.getCleanMask();
tamMask = cleanMask.length; var tamMask = cleanMask.length;
sw = false; var sw = false;
if (testData.indexOf(me.comma_separator) == -1){ if (testData.indexOf(me.comma_separator) == -1){
aux = cleanMask.split('_'); aux = cleanMask.split('_');
tamMask = aux[0].length; tamMask = aux[0].length;
sw = true; sw = true;
} }
if (tamData >= tamMask){
var minusExi;
for (var numI = 0; newValue.length > numI; numI++) {
var campVal = newValue[numI];
if ((typeof(campVal) === 'number' || typeof(campVal) === 'string') && (campVal !== '') && (!isNaN(campVal))) {
minusExi = false;
} else {
if (campVal == '-') {
minusExi = true;
numI = newValue.length + 1;
}
}
}
if (!(keyCode == 45 || (minusExi && tamMask >= tamData))) { if (tamData >= tamMask) {
if (sw && !swPeriod && testData.indexOf(me.comma_separator) == -1){ var swMinus = false;
action = 'none';
if (/^.*\-.*$/.test(newValue)) {
swMinus = true;
}
if (!(keyCode == 45 || (swMinus && tamMask >= tamData))) {
if (sw && !swPeriod){
action = "none";
}
if (!sw) {
action = "none";
}
} }
if (!sw) action = 'none';
}
} }
} }
switch(action){ switch(action){
case 'mask': case 'move': case 'mask': case 'move':
dataNewMask = me.replaceMasks(newValue, newCursor); dataNewMask = me.replaceMasks(newValue, newCursor);
@@ -1913,14 +1931,26 @@ function G()
//Apply a mask to a number //Apply a mask to a number
this.ApplyMask = function(num, mask, cursor, dir, comma_sep){ this.ApplyMask = function(num, mask, cursor, dir, comma_sep){
myOut = ''; var myOut = "";
myCursor = cursor; var myCursor = cursor;
if (num.length == 0) return {result: '', cursor: 0}; var key = "";
switch(dir){
if (num.length == 0) {
return {result: "", cursor: 0};
}
switch (dir) {
case 'forward': case 'forward':
iMask = mask.split(''); iMask = mask.split("");
value = _getOnlyNumbers(num,''); value = _getOnlyNumbers(num, "");
iNum = value.split(''); iNum = value.split("");
var swMinus = (iNum.length > 0 && iNum[0] == "-")? 1 : 0;
if (swMinus == 1) {
key = iNum.shift();
}
for(e=0; e < iMask.length && iNum.length > 0; e++){ for(e=0; e < iMask.length && iNum.length > 0; e++){
switch(iMask[e]){ switch(iMask[e]){
case '#': case '0': case 'd': case 'm': case 'y': case 'Y': case '#': case '0': case 'd': case 'm': case 'y': case 'Y':
@@ -1935,6 +1965,10 @@ function G()
break; break;
} }
} }
if (swMinus == 1) {
myOut = "-" + myOut;
}
break; break;
case 'reverse': case 'reverse':
var __DECIMAL_SEP = comma_sep; var __DECIMAL_SEP = comma_sep;
@@ -2072,6 +2106,8 @@ function G()
} }
} }
else if(cursor == num.length){ else if(cursor == num.length){
var last = 0;
for(l=0; l < aOut.length; l++){ for(l=0; l < aOut.length; l++){
switch(aOut[l]){ switch(aOut[l]){
case '0': case '1': case '2': case '3': case '4': case '0': case '1': case '2': case '3': case '4':

View File

@@ -1003,16 +1003,17 @@ minIndex=0;minValue=aResults[0].result;if(aResults.length>1){for(i=1;i<aResults.
return aResults[minIndex];};this.getCleanMask=function(){aMask=me.mask.split('');maskOut='';for(i=0;i<aMask.length;i++){if(me.mType=='currency'||me.mType=='percentage'||(me.mType=='text'&&me.validate=='Real')){switch(aMask[i]){case'0':case'#':maskOut+=aMask[i];break;case me.comma_separator:maskOut+='_';break;}} return aResults[minIndex];};this.getCleanMask=function(){aMask=me.mask.split('');maskOut='';for(i=0;i<aMask.length;i++){if(me.mType=='currency'||me.mType=='percentage'||(me.mType=='text'&&me.validate=='Real')){switch(aMask[i]){case'0':case'#':maskOut+=aMask[i];break;case me.comma_separator:maskOut+='_';break;}}
else{switch(aMask[i]){case'0':case'#':case'd':case'm':case'y':case'Y':maskOut+=aMask[i];break;}}} else{switch(aMask[i]){case'0':case'#':case'd':case'm':case'y':case'Y':maskOut+=aMask[i];break;}}}
return maskOut;} return maskOut;}
this.applyMask=function(keyCode){if(me.mask!=''){dataWOMask=me.removeMask();currentValue=dataWOMask.result;currentSel=dataWOMask.cursor;cursorStart=currentSel.selectionStart;cursorEnd=currentSel.selectionEnd;action='mask';swPeriod=false;switch(keyCode){case 0:action='none';break;case 8:newValue=currentValue.substring(0,cursorStart-1);newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart-1;break;case 46:newValue=currentValue.substring(0,cursorStart);newValue+=currentValue.substring(cursorEnd+1,currentValue.length);newCursor=cursorStart;break;case 256:case 44:swPeriod=true;newValue=currentValue.substring(0,cursorStart);if(keyCode==256) this.applyMask=function(keyCode){if(me.mask!=''){dataWOMask=me.removeMask();currentValue=dataWOMask.result;currentSel=dataWOMask.cursor;cursorStart=currentSel.selectionStart;cursorEnd=currentSel.selectionEnd;var action="mask";var swPeriod=false;var i=0;switch(keyCode){case 0:action='none';break;case 8:newValue=currentValue.substring(0,cursorStart-1);newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart-1;break;case 46:newValue=currentValue.substring(0,cursorStart);newValue+=currentValue.substring(cursorEnd+1,currentValue.length);newCursor=cursorStart;break;case 256:case 44:swPeriod=true;newValue=currentValue.substring(0,cursorStart);if(keyCode==256)
newValue+='.';else newValue+='.';else
newValue+=',';newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;break;case 35:case 36:case 37:case 38:case 39:case 40:newValue=currentValue;switch(keyCode){case 36:newCursor=0;break;case 35:newCursor=currentValue.length;break;case 37:newCursor=cursorStart-1;break;case 39:newCursor=cursorStart+1;break;} newValue+=',';newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;break;case 35:case 36:case 37:case 38:case 39:case 40:newValue=currentValue;switch(keyCode){case 36:newCursor=0;break;case 35:newCursor=currentValue.length;break;case 37:newCursor=cursorStart-1;break;case 39:newCursor=cursorStart+1;break;}
action='move';break;case 45:if(me.mType=='currency'||(me.mType=='text'&&(me.validate=='Real'||me.validate=='Int'))){newValue=currentValue.substring(0,currentValue.length).split('');for(var numI=0;newValue.length>numI;numI++){var campVal=newValue[numI];if((typeof(campVal)==='number'||typeof(campVal)==='string')&&(campVal!=='')&&(!isNaN(campVal))){newValue=currentValue.substring(0,numI-1);newValue+='-'+currentValue.substring(numI);numI=newValue.length+1;newCursor=cursorStart+1;}else{if(campVal=='-'){newValue=currentValue.substring(0,numI-1);newValue+=currentValue.substring(numI+1);newCursor=cursorStart-1;numI=newValue.length+1;}}} action='move';break;case 45:if(me.mType=="currency"||(me.mType=="text"&&(me.validate=="Real"||me.validate=="Int"))){newValue=currentValue.substring(0,currentValue.length).split("");if(newValue.length>0){for(i=0;i<=newValue.length-1;i++){var campVal=newValue[i];if((typeof campVal=="number"||typeof campVal=="string")&&campVal!=""&&!isNaN(campVal)){newValue=currentValue.substring(0,i-1);newValue=newValue+"-"+currentValue.substring(i);i=newValue.length+1;newCursor=cursorStart+1;}else{if(campVal=="-"){newValue=currentValue.substring(0,i-1);newValue=newValue+currentValue.substring(i+1);newCursor=cursorStart-1;i=newValue.length+1;}}}
if(newValue.join){newValue=newValue.join('');}} if(newValue.join){newValue=newValue.join("");}}else{newKey=String.fromCharCode(keyCode);newValue=currentValue.substring(0,cursorStart);newValue=newValue+newKey;newValue=newValue+currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;}}
break;default:newKey=String.fromCharCode(keyCode);newValue=currentValue.substring(0,cursorStart);newValue+=newKey;newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;break;} break;default:newKey=String.fromCharCode(keyCode);newValue=currentValue.substring(0,cursorStart);newValue=newValue+newKey;newValue=newValue+currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;break;}
if(newCursor<0)newCursor=0;if(keyCode!=8&&keyCode!=46&&keyCode!=35&&keyCode!=36&&keyCode!=37&&keyCode!=39){testData=dataWOMask.result;tamData=testData.length;cleanMask=me.getCleanMask();tamMask=cleanMask.length;sw=false;if(testData.indexOf(me.comma_separator)==-1){aux=cleanMask.split('_');tamMask=aux[0].length;sw=true;} if(newCursor<0){newCursor=0;}
if(tamData>=tamMask){var minusExi;for(var numI=0;newValue.length>numI;numI++){var campVal=newValue[numI];if((typeof(campVal)==='number'||typeof(campVal)==='string')&&(campVal!=='')&&(!isNaN(campVal))){minusExi=false;}else{if(campVal=='-'){minusExi=true;numI=newValue.length+1;}}} if(keyCode!=8&&keyCode!=46&&keyCode!=35&&keyCode!=36&&keyCode!=37&&keyCode!=39){var testData=dataWOMask.result;var tamData=testData.length;var cleanMask=me.getCleanMask();var tamMask=cleanMask.length;var sw=false;if(testData.indexOf(me.comma_separator)==-1){aux=cleanMask.split('_');tamMask=aux[0].length;sw=true;}
if(!(keyCode==45||(minusExi&&tamMask>=tamData))){if(sw&&!swPeriod&&testData.indexOf(me.comma_separator)==-1){action='none';} if(tamData>=tamMask){var swMinus=false;if(/^.*\-.*$/.test(newValue)){swMinus=true;}
if(!sw)action='none';}}} if(!(keyCode==45||(swMinus&&tamMask>=tamData))){if(sw&&!swPeriod){action="none";}
if(!sw){action="none";}}}}
switch(action){case'mask':case'move':dataNewMask=me.replaceMasks(newValue,newCursor);me.element.value=dataNewMask.result;me.setSelectionRange(dataNewMask.cursor,dataNewMask.cursor);break;}} switch(action){case'mask':case'move':dataNewMask=me.replaceMasks(newValue,newCursor);me.element.value=dataNewMask.result;me.setSelectionRange(dataNewMask.cursor,dataNewMask.cursor);break;}}
else{currentValue=me.element.value;currentSel=me.getCursorPosition();cursorStart=currentSel.selectionStart;cursorEnd=currentSel.selectionEnd;switch(keyCode){case 8:newValue=currentValue.substring(0,cursorStart-1);newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart-1;break;case 45:case 46:if(me.validate!="Email"){newValue=currentValue.substring(0,cursorStart);newValue+=currentValue.substring(cursorEnd+1,currentValue.length);newCursor=cursorStart;}else{newKey=String.fromCharCode(keyCode);newValue=currentValue.substring(0,cursorStart);newValue+=newKey;newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;} else{currentValue=me.element.value;currentSel=me.getCursorPosition();cursorStart=currentSel.selectionStart;cursorEnd=currentSel.selectionEnd;switch(keyCode){case 8:newValue=currentValue.substring(0,cursorStart-1);newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart-1;break;case 45:case 46:if(me.validate!="Email"){newValue=currentValue.substring(0,cursorStart);newValue+=currentValue.substring(cursorEnd+1,currentValue.length);newCursor=cursorStart;}else{newKey=String.fromCharCode(keyCode);newValue=currentValue.substring(0,cursorStart);newValue+=newKey;newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;}
break;case 256:newValue=currentValue.substring(0,cursorStart);newValue+='.';newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;break;case 35:case 36:case 37:case 38:case 39:case 40:newValue=currentValue;switch(keyCode){case 36:newCursor=0;break;case 35:newCursor=currentValue.length;break;case 37:newCursor=cursorStart-1;break;case 39:newCursor=cursorStart+1;break;} break;case 256:newValue=currentValue.substring(0,cursorStart);newValue+='.';newValue+=currentValue.substring(cursorEnd,currentValue.length);newCursor=cursorStart+1;break;case 35:case 36:case 37:case 38:case 39:case 40:newValue=currentValue;switch(keyCode){case 36:newCursor=0;break;case 35:newCursor=currentValue.length;break;case 37:newCursor=cursorStart-1;break;case 39:newCursor=cursorStart+1;break;}
@@ -1105,8 +1106,11 @@ function _getOnlyMask(mask,_DEC){var _mask='';_aMask=mask.split('');for(var d=0;
return _mask;} return _mask;}
function _checkNumber(num,mask){var __DECIMAL_SEP='.';var aNum=_getOnlyNumbers(num,__DECIMAL_SEP);var _outM=aNum;var aMask=_getOnlyMask(mask,__DECIMAL_SEP);if(aMask.indexOf(__DECIMAL_SEP+'0')>0){eMask=aMask.replace(__DECIMAL_SEP,'');eNum=aNum.replace(__DECIMAL_SEP,'');if(eNum.length>eMask.length){_outM=aNum.substring(0,eMask.length+1);}}else{if(aMask.indexOf(__DECIMAL_SEP)>0){iMask=aMask.split(__DECIMAL_SEP);if(aNum.indexOf(__DECIMAL_SEP)>0){iNum=aNum.split(__DECIMAL_SEP);if(iNum[1].length>iMask[1].length){_outM=iNum[0]+__DECIMAL_SEP+iNum[1].substr(0,iMask[1].length);}else{if(iNum[0].length>iMask[0].length){_outM=iNum[0].substr(0,iMask[0].length)+__DECIMAL_SEP+iNum[1];}}}else{if(aNum.length>iMask[0].length){_outM=aNum.substr(0,iMask[0].length);}}}else{if(aNum.indexOf(__DECIMAL_SEP)>0){iNum=aNum.split(__DECIMAL_SEP);if(iNum[0].length>aMask.length){_outM=iNum[0].substr(0,aMask.length);}}else{if(aNum.length>aMask.length){_outM=aNum.substr(0,aMask.length);}}}} function _checkNumber(num,mask){var __DECIMAL_SEP='.';var aNum=_getOnlyNumbers(num,__DECIMAL_SEP);var _outM=aNum;var aMask=_getOnlyMask(mask,__DECIMAL_SEP);if(aMask.indexOf(__DECIMAL_SEP+'0')>0){eMask=aMask.replace(__DECIMAL_SEP,'');eNum=aNum.replace(__DECIMAL_SEP,'');if(eNum.length>eMask.length){_outM=aNum.substring(0,eMask.length+1);}}else{if(aMask.indexOf(__DECIMAL_SEP)>0){iMask=aMask.split(__DECIMAL_SEP);if(aNum.indexOf(__DECIMAL_SEP)>0){iNum=aNum.split(__DECIMAL_SEP);if(iNum[1].length>iMask[1].length){_outM=iNum[0]+__DECIMAL_SEP+iNum[1].substr(0,iMask[1].length);}else{if(iNum[0].length>iMask[0].length){_outM=iNum[0].substr(0,iMask[0].length)+__DECIMAL_SEP+iNum[1];}}}else{if(aNum.length>iMask[0].length){_outM=aNum.substr(0,iMask[0].length);}}}else{if(aNum.indexOf(__DECIMAL_SEP)>0){iNum=aNum.split(__DECIMAL_SEP);if(iNum[0].length>aMask.length){_outM=iNum[0].substr(0,aMask.length);}}else{if(aNum.length>aMask.length){_outM=aNum.substr(0,aMask.length);}}}}
return _outM;} return _outM;}
this.ApplyMask=function(num,mask,cursor,dir,comma_sep){myOut='';myCursor=cursor;if(num.length==0)return{result:'',cursor:0};switch(dir){case'forward':iMask=mask.split('');value=_getOnlyNumbers(num,'');iNum=value.split('');for(e=0;e<iMask.length&&iNum.length>0;e++){switch(iMask[e]){case'#':case'0':case'd':case'm':case'y':case'Y':if(iNum.length>0){key=iNum.shift();myOut+=key;} this.ApplyMask=function(num,mask,cursor,dir,comma_sep){var myOut="";var myCursor=cursor;var key="";if(num.length==0){return{result:"",cursor:0};}
switch(dir){case'forward':iMask=mask.split("");value=_getOnlyNumbers(num,"");iNum=value.split("");var swMinus=(iNum.length>0&&iNum[0]=="-")?1:0;if(swMinus==1){key=iNum.shift();}
for(e=0;e<iMask.length&&iNum.length>0;e++){switch(iMask[e]){case'#':case'0':case'd':case'm':case'y':case'Y':if(iNum.length>0){key=iNum.shift();myOut+=key;}
break;default:myOut+=iMask[e];if(e<myCursor)myCursor++;break;}} break;default:myOut+=iMask[e];if(e<myCursor)myCursor++;break;}}
if(swMinus==1){myOut="-"+myOut;}
break;case'reverse':var __DECIMAL_SEP=comma_sep;var osize=num.length;num=_getOnlyNumbers(num,__DECIMAL_SEP);if(num.length==0)return{result:'',cursor:0};var iNum=invertir(num);var iMask=invertir(mask);if(iMask.indexOf('0'+__DECIMAL_SEP)>0){aMask=iMask;iNum=_getOnlyNumbers(iNum,'*');aNum=iNum;eMask=aMask.split('');eNum=aNum.split('');_cout='';for(e=0;e<eMask.length;e++){switch(eMask[e]){case'#':case'0':if(eNum.length>0){key=eNum.shift();_cout+=key;} break;case'reverse':var __DECIMAL_SEP=comma_sep;var osize=num.length;num=_getOnlyNumbers(num,__DECIMAL_SEP);if(num.length==0)return{result:'',cursor:0};var iNum=invertir(num);var iMask=invertir(mask);if(iMask.indexOf('0'+__DECIMAL_SEP)>0){aMask=iMask;iNum=_getOnlyNumbers(iNum,'*');aNum=iNum;eMask=aMask.split('');eNum=aNum.split('');_cout='';for(e=0;e<eMask.length;e++){switch(eMask[e]){case'#':case'0':if(eNum.length>0){key=eNum.shift();_cout+=key;}
break;case'.':case',':if(eMask[e]!=__DECIMAL_SEP){if(eNum.length>0){_cout+=eMask[e];}}else{_cout+=eMask[e];} break;case'.':case',':if(eMask[e]!=__DECIMAL_SEP){if(eNum.length>0){_cout+=eMask[e];}}else{_cout+=eMask[e];}
break;default:_cout+=eMask[e];break;}} break;default:_cout+=eMask[e];break;}}
@@ -1122,7 +1126,7 @@ _cout+=pMask[p];}}
if(pNum.length>0&&pNum[0]=='-'){key=pNum.shift();_cout+=key;} if(pNum.length>0&&pNum[0]=='-'){key=pNum.shift();_cout+=key;}
if(sw_c&&sw_d){myOut=_dout+__DECIMAL_SEP+_cout;}else{myOut=_dout+_cout;}} if(sw_c&&sw_d){myOut=_dout+__DECIMAL_SEP+_cout;}else{myOut=_dout+_cout;}}
myOut=invertir(myOut);tmpCursor=0;aOut=myOut.split('');if(cursor==0){for(l=0;l<aOut.length;l++){switch(aOut[l]){case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':case'8':case'9':case __DECIMAL_SEP:myCursor=l;l=aOut.length;break;}}} myOut=invertir(myOut);tmpCursor=0;aOut=myOut.split('');if(cursor==0){for(l=0;l<aOut.length;l++){switch(aOut[l]){case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':case'8':case'9':case __DECIMAL_SEP:myCursor=l;l=aOut.length;break;}}}
else if(cursor==num.length){for(l=0;l<aOut.length;l++){switch(aOut[l]){case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':case'8':case'9':case __DECIMAL_SEP:last=l;break;}} else if(cursor==num.length){var last=0;for(l=0;l<aOut.length;l++){switch(aOut[l]){case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':case'8':case'9':case __DECIMAL_SEP:last=l;break;}}
myCursor=last+1;} myCursor=last+1;}
else{aNum=num.split('');offset=0;aNewNum=myOut.split('');for(a=0;a<cursor;a++){notFinded=false;while(aNum[a]!=aNewNum[a+offset]&&!notFinded){offset++;if(a+offset>aNewNum.length){offset=-1;notFinded=true;}}} else{aNum=num.split('');offset=0;aNewNum=myOut.split('');for(a=0;a<cursor;a++){notFinded=false;while(aNum[a]!=aNewNum[a+offset]&&!notFinded){offset++;if(a+offset>aNewNum.length){offset=-1;notFinded=true;}}}
myCursor=cursor+offset;} myCursor=cursor+offset;}

View File

@@ -406,10 +406,10 @@ function expandNode()
case "BOTH": case "BOTH":
$strExpander = null; $strExpander = null;
$mimeInformation = getMime($obj["APP_DOC_FILENAME"] . ".pdf"); $mimeInformation = getMime($obj["APP_DOC_FILENAME"] . ".pdf");
$strExpander = $strExpander . "<a href=\"javascript:openActionDialog(this, 'download', 'pdf');\" style=\"color: #000000; text-decoration: none;\"><img src=\"/images/documents/extension/pdf.png\" style=\"margin-left: 25px; border: 0;\" alt=\"\" /> <b>" . $obj["APP_DOC_FILENAME"] . ".pdf</b> (" . $mimeInformation["description"] . ")</a>"; $strExpander = $strExpander . "<a href=\"javascript:;\" onclick=\"openActionDialog(this, 'download', 'pdf'); return false;\" style=\"color: #000000; text-decoration: none;\"><img src=\"/images/documents/extension/pdf.png\" style=\"margin-left: 25px; border: 0;\" alt=\"\" /> <b>" . $obj["APP_DOC_FILENAME"] . ".pdf</b> (" . $mimeInformation["description"] . ")</a>";
$strExpander = $strExpander . "<br />"; $strExpander = $strExpander . "<br />";
$mimeInformation = getMime($obj["APP_DOC_FILENAME"] . ".doc"); $mimeInformation = getMime($obj["APP_DOC_FILENAME"] . ".doc");
$strExpander = $strExpander . "<a href=\"javascript:openActionDialog(this, 'download', 'doc');\" style=\"color: #000000; text-decoration: none;\"><img src=\"/images/documents/extension/doc.png\" style=\"margin-left: 25px; border: 0;\" alt=\"\" /> <b>" . $obj["APP_DOC_FILENAME"] . ".doc</b> (" . $mimeInformation["description"] . ")</a>"; $strExpander = $strExpander . "<a href=\"javascript:;\" onclick=\"openActionDialog(this, 'download', 'doc'); return false;\" style=\"color: #000000; text-decoration: none;\"><img src=\"/images/documents/extension/doc.png\" style=\"margin-left: 25px; border: 0;\" alt=\"\" /> <b>" . $obj["APP_DOC_FILENAME"] . ".doc</b> (" . $mimeInformation["description"] . ")</a>";
$tempTree["outDocGenerate"] = $strExpander; $tempTree["outDocGenerate"] = $strExpander;