rleland 2002/10/11 12:12:26 Modified: conf/share validator-rules.xml Log: Bug [10191] add intRange & floatRange validation fo floating point numbers can be bounded. Revision Changes Path 1.9 +87 -0 jakarta-struts/conf/share/validator-rules.xml Index: validator-rules.xml =================================================================== RCS file: /home/cvs/jakarta-struts/conf/share/validator-rules.xml,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- validator-rules.xml 16 Jul 2002 02:37:55 -0000 1.8 +++ validator-rules.xml 11 Oct 2002 19:12:26 -0000 1.9 @@ -631,6 +631,93 @@ </validator> + <validator name="intRange" + classname="org.apache.struts.util.StrutsValidator" + method="validateIntRange" + methodParams="java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest" + depends="required,integer" + msg="errors.range"> + + <javascript><![CDATA[ + function validateIntRange(form) { + var bValid = true; + var focusField = null; + var i = 0; + var fields = new Array(); + oRange = new intRange(); + for (x in oRange) { + if ((form[oRange[x][0]].type == 'text' || + form[oRange[x][0]].type == 'textarea') && + (form[oRange[x][0]].value.length > 0)) { + var iMin = parseInt(oRange[x][2]("min")); + var iMax = parseInt(oRange[x][2]("max")); + var iValue = parseInt(form[oRange[x][0]].value); + if (!(iValue >= iMin && iValue <= iMax)) { + if (i == 0) { + focusField = form[oRange[x][0]]; + } + fields[i++] = oRange[x][1]; + bValid = false; + } + } + } + if (fields.length > 0) { + focusField.focus(); + alert(fields.join('\n')); + } + return bValid; + }]]> + </javascript> + + </validator> + + <validator name="floatRange" + classname="org.apache.struts.util.StrutsValidator" + method="validateFloatRange" + methodParams="java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest" + depends="required,float" + msg="errors.range"> + + <javascript><![CDATA[ + function validateFloatRange(form) { + var bValid = true; + var focusField = null; + var i = 0; + var fields = new Array(); + oRange = new floatRange(); + for (x in oRange) { + if ((form[oRange[x][0]].type == 'text' || + form[oRange[x][0]].type == 'textarea') && + (form[oRange[x][0]].value.length > 0)) { + var fMin = parseFloat(oRange[x][2]("min")); + var fMax = parseFloat(oRange[x][2]("max")); + var fValue = parseFloat(form[oRange[x][0]].value); + if (!(fValue >= fMin && fValue <= fMax)) { + if (i == 0) { + focusField = form[oRange[x][0]]; + } + fields[i++] = oRange[x][1]; + bValid = false; + } + } + } + if (fields.length > 0) { + focusField.focus(); + alert(fields.join('\n')); + } + return bValid; + }]]> + </javascript> + + </validator> <validator name="creditCard" classname="org.apache.struts.util.StrutsValidator"
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>