=== modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/commons.js' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/commons.js 2011-03-15 13:37:36 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/commons.js 2011-03-15 14:49:49 +0000 @@ -8,8 +8,10 @@ /** * Redirects to the translate GUI. * - * @param className the name of the object class. - * @param objectId the identifier of the object. + * @param className + * the name of the object class. + * @param objectId + * the identifier of the object. */ function translate( className, objectId ) { @@ -22,7 +24,8 @@ * Gets help content for the given id. Opens the right bar and puts the content * inside. Reads data from an underlying docbook file. * - * @param id the content id, refers to the section id in the docbook file. + * @param id + * the content id, refers to the section id in the docbook file. */ function getHelpContent( id ) { @@ -47,7 +50,8 @@ /** * Filters values in a html table with tbody id "list". * - * @param filter the filter. + * @param filter + * the filter. */ function filterValues( filter, columnIndex ) { @@ -75,9 +79,11 @@ } /** - * Returns the value of the selected option in the list with the given identifier. + * Returns the value of the selected option in the list with the given + * identifier. * - * @param listId the list identifier. + * @param listId + * the list identifier. */ function getListValue( listId ) { @@ -90,7 +96,8 @@ /** * Hides the document element with the given identifier. * - * @param id the element identifier. + * @param id + * the element identifier. */ function hideById( id ) { @@ -100,7 +107,8 @@ /** * Shows the document element with the given identifier. * - * @param id the element identifier. + * @param id + * the element identifier. */ function showById( id ) { @@ -110,7 +118,8 @@ /** * Returns true if the element with the given identifier has text, false if not. * - * @param inputId the identifier of the input element. + * @param inputId + * the identifier of the input element. */ function hasText( inputId ) { @@ -123,10 +132,11 @@ } /** - * Returns true if the element with the given identifier is checked, false if not - * or if it does not exist. + * Returns true if the element with the given identifier is checked, false if + * not or if it does not exist. * - * @param checkboxId the identifier of the checkbox element. + * @param checkboxId + * the identifier of the checkbox element. */ function isChecked( checkboxId ) { @@ -134,7 +144,8 @@ } /** - * Checks the checkbox with the given jQuery Selector String if the checkbox exists. + * Checks the checkbox with the given jQuery Selector String if the checkbox + * exists. */ function checkALL( jQuerySelectorString ) { @@ -165,7 +176,8 @@ } /** - * unChecks the checkbox with the given jQuery Selector String if the checkbox exists. + * unChecks the checkbox with the given jQuery Selector String if the checkbox + * exists. */ function unCheckALL( jQuerySelectorString ) { @@ -204,7 +216,8 @@ }); } /** - * Enables the element with the given identifier if the element exists in parent window of frame. + * Enables the element with the given identifier if the element exists in parent + * window of frame. */ function enableParent( elementId ) { @@ -217,7 +230,8 @@ } /** - * Disables the element with the given identifier if the element exists in parent window of frame. + * Disables the element with the given identifier if the element exists in + * parent window of frame. */ function disableParent( elementId ) { @@ -233,7 +247,8 @@ * Returns true if the element with the given identifier has selected elements * associated with it, false if not. * - * @param listId the identifier of the list element. + * @param listId + * the identifier of the list element. */ function hasElements( listId ) { @@ -243,7 +258,8 @@ /** * Returns true if the element with the given identifier exists, false if not. * - * @param elementId the identifier of the element. + * @param elementId + * the identifier of the element. */ function isNotNull( elementId ) { @@ -253,12 +269,14 @@ /** * HTML encodes the given string. * - * @param str the input string. + * @param str + * the input string. * @return the HTML encoded string. */ function htmlEncode( str ) { - str = str.replace( /\%/g, "%25" ); //This line must come first so the % doesn't get overwritten later + str = str.replace( /\%/g, "%25" ); // This line must come first so the % + // doesn't get overwritten later str = str.replace( /\ /g, "%20" ); str = str.replace( /\!/g, "%21" ); str = str.replace( /\"/g, "%22" ); @@ -288,8 +306,10 @@ /** * Gets the value for the element with the given name from the DOM object. * - * @param parentElement the DOM object. - * @param childElementName the name of the element. + * @param parentElement + * the DOM object. + * @param childElementName + * the name of the element. */ function getElementValue( parentElement, childElementName ) { @@ -301,8 +321,10 @@ /** * Gets the attribute value from the given DOM element. * - * @param parentElement the DOM object. - * @param attributeName the name of the attribute. + * @param parentElement + * the DOM object. + * @param attributeName + * the name of the attribute. */ function getElementAttribute( parentElement, childElementName, childAttributeName ) { @@ -314,7 +336,8 @@ /** * Gets the value from the given DOM element. * - * @param rootElement the DOM object. + * @param rootElement + * the DOM object. */ function getRootElementValue( rootElement ) { @@ -324,10 +347,13 @@ } /** - * Gets the value of the attribute with the given name from the given DOM element. + * Gets the value of the attribute with the given name from the given DOM + * element. * - * @param rootElement the DOM object. - * @param attributeName the name of the attribute. + * @param rootElement + * the DOM object. + * @param attributeName + * the name of the attribute. */ function getRootElementAttribute( rootElement, attributeName ) { @@ -337,8 +363,10 @@ /** * Sets a value on the given element. * - * @param fieldId the identifier of the element. - * @param value the value to set. + * @param fieldId + * the identifier of the element. + * @param value + * the value to set. */ function setInnerHTML( fieldId, value ) { @@ -348,7 +376,8 @@ /** * Gets a value from the given element and HTML encodes it. * - * @param fieldId the identifier of the element. + * @param fieldId + * the identifier of the element. * @return the HTML encoded value of the element with the given identifier. */ function getInnerHTML( fieldId ) @@ -359,8 +388,10 @@ /** * Sets a value on the given element. * - * @param fieldId the identifier of the element. - * @param value the value to set. + * @param fieldId + * the identifier of the element. + * @param value + * the value to set. */ function setFieldValue( fieldId, value ) { @@ -370,7 +401,8 @@ /** * Gets a value from the given element and HTML encodes it. * - * @param fieldId the identifier of the element. + * @param fieldId + * the identifier of the element. * @return the HTML encoded value of the element with the given identifier. */ function getFieldValue( fieldId ) @@ -386,7 +418,8 @@ /** * Gets a value from the given element and HTML encodes it. * - * @param fieldId the identifier of the element. + * @param fieldId + * the identifier of the element. * @return the type of the element with the given identifier. */ function getTypeById( fieldId, attribute ) @@ -397,7 +430,8 @@ /** * get value of input radio with name * - * @param radioName name of input radio + * @param radioName + * name of input radio */ function getRadioValue( radioName ) { @@ -411,8 +445,10 @@ } /** - * set value for input radio with name - * @param radioName name of input radio + * set value for input radio with name + * + * @param radioName + * name of input radio */ function setRadioValue( radioName, value ) { @@ -429,7 +465,8 @@ /** * Shows the message span and sets the message as text. * - * @param message the message. + * @param message + * the message. */ function setMessage( message ) { @@ -441,9 +478,11 @@ } /** - * Shows the message span and sets the message as text together with a wait animation. + * Shows the message span and sets the message as text together with a wait + * animation. * - * @param message the message. + * @param message + * the message. */ function setWaitMessage( message ) { @@ -461,7 +500,8 @@ /** * Slides down the header message div and sets the message as text. * - * @param message the message. + * @param message + * the message. */ function setHeaderMessage( message ) { @@ -472,7 +512,8 @@ /** * Updates the text in the header message div with the message. * - * @param message the message. + * @param message + * the message. */ function updateHeaderMessage( message ) { @@ -480,9 +521,11 @@ } /** - * Slides down the header message div and sets the message as text together with a wait animation. + * Slides down the header message div and sets the message as text together with + * a wait animation. * - * @param message the message. + * @param message + * the message. */ function setHeaderWaitMessage( message ) { @@ -493,7 +536,8 @@ /** * Updates the text in the header message div with the message. * - * @param message the message. + * @param message + * the message. */ function updateHeaderWaitMessage( message ) { @@ -537,7 +581,8 @@ /** * Slides down the info message div and sets the message as text. * - * @param message the message. + * @param message + * the message. */ function setInfo( message ) { @@ -591,7 +636,8 @@ /** * Convenience method for getting a document element. * - * @param id id of the element to get. + * @param id + * id of the element to get. */ function byId( elementId ) { @@ -601,8 +647,10 @@ /** * Toggles visibility for an element. * - * @param id the identifier of the element. - * @param display boolean indicator. + * @param id + * the identifier of the element. + * @param display + * boolean indicator. */ function toggleByIdAndFlag( id, display ) { @@ -619,7 +667,8 @@ /** * Toggles visibility for an element. * - * @param id the identifier of the element. + * @param id + * the identifier of the element. */ function toggleById( id ) { @@ -651,8 +700,8 @@ } /** - * Returns a query string with all element values in the select list and - * the specified param. + * Returns a query string with all element values in the select list and the + * specified param. */ function getParamString( elementId, param ) { @@ -670,9 +719,12 @@ /** * Creates an option and adds it to the list. * - * @param list the list. - * @param optionValue the option value. - * @param optionText the option text. + * @param list + * the list. + * @param optionValue + * the option value. + * @param optionText + * the option text. */ function addOptionToList( list, optionValue, optionText ) { @@ -683,11 +735,13 @@ } /** - * Returns a query string on the form = based on the options - * in the list with the given identifier. + * Returns a query string on the form = based on the + * options in the list with the given identifier. * - * @param listId the list identifier. - * @param paramName the name of the query param. + * @param listId + * the list identifier. + * @param paramName + * the name of the query param. * @return a query string. */ function getQueryStringFromList( listId, paramName ) @@ -724,13 +778,17 @@ } /** - * Deletes and removes an item from a table. The table row to be removed must have - * an identifier on the form "tr[itemId]". + * Deletes and removes an item from a table. The table row to be removed must + * have an identifier on the form "tr[itemId]". * - * @param itemId the item identifier. - * @param itemName the item name. - * @param message the confirmation message. - * @param action the server action url for deleting the item. + * @param itemId + * the item identifier. + * @param itemName + * the item name. + * @param message + * the confirmation message. + * @param action + * the server action url for deleting the item. */ function removeItem( itemId, itemName, confirmation, action ) { @@ -767,8 +825,10 @@ /** - * Create jQuery datepicker for input text with id * * - * @param id the id of input field which you want enter date * + * Create jQuery datepicker for input text with id * * + * + * @param id + * the id of input field which you want enter date * */ function datePicker( id ) { @@ -832,8 +892,10 @@ } /** - * Create jQuery datepicker for input text with id * * - * @param id the id of input field which you want enter date * + * Create jQuery datepicker for input text with id * * + * + * @param id + * the id of input field which you want enter date * */ function datePickerValid( id, today ) { @@ -861,9 +923,12 @@ } /** - * Create jQuery datepicker for start date and end ate text with id * * - * @param startdate the id of input field which you want enter start date * - * @param enddate the id of input field which you want enter end date * + * Create jQuery datepicker for start date and end ate text with id * * + * + * @param startdate + * the id of input field which you want enter start date * + * @param enddate + * the id of input field which you want enter end date * */ function datePickerInRange ( startdate, enddate, setCurrentStartDate, setCurrentEndDate ) @@ -907,8 +972,10 @@ } /** - * Create input table id become sortable table * * - * @param tableId the id of table you want to sort * * + * Create input table id become sortable table * * + * + * @param tableId + * the id of table you want to sort * * */ function tableSorter( tableId, sortList ) @@ -979,25 +1046,24 @@ setCaretToPos( inputArea, inputArea.value.length ); } -//============================================================================== -// FORM VALIDATION -//============================================================================== +// ============================================================================== +// FORM VALIDATION +// ============================================================================== /** - * Create validator for fileds in form * + * Create validator for fileds in form * */ -/* this should replace validation() at some point, but theres just to much code +/* + * this should replace validation() at some point, but theres just to much code * depending on the old version for now. * - * See http://bassistance.de/jquery-plugins/jquery-plugin-validation/ for more + * See http://bassistance.de/jquery-plugins/jquery-plugin-validation/ for more * information about jquery.validate. * - * @param formId form to validate - * @param submitHandler the submitHandler to use + * @param formId form to validate @param submitHandler the submitHandler to use * @param kwargs A dictionary of optional arguments, currently supported are: - * beforeValidateHandler - * rules + * beforeValidateHandler rules */ function validation2(formId, submitHandler, kwargs) { @@ -1022,6 +1088,21 @@ return validator; } +function getValidationRules() { + var validationRules; + + jQuery.ajax({ + 'url': '../dhis-web-commons/validationRules.json', + async: false, + cache: false, + success: function(data) { + validationRules = jQuery.parseJSON(data); + } + }); + + return validationRules; +} + function validation( formId, submitHandler, beforeValidateHandler ) { var nameField = jQuery('#' + formId + ' :input')[0]; @@ -1043,9 +1124,13 @@ /** * Add validation rule remote for input field -* @param inputId is id for input field -* @param url is ajax request url -* @param params is array of param will send to server by ajax request + * + * @param inputId + * is id for input field + * @param url + * is ajax request url + * @param params + * is array of param will send to server by ajax request */ function checkValueIsExist( inputId, url, params ) { @@ -1081,11 +1166,14 @@ } /** -* Add any validator Rules for input -* @param inputId is id for input field -* @param rules is array of rule -* @note: input field must have name same with id -*/ + * Add any validator Rules for input + * + * @param inputId + * is id for input field + * @param rules + * is array of rule + * @note: input field must have name same with id + */ function addValidatorRulesById( inputId, rules ) { addValidatorRules( jQuery("#" + inputId), rules ); @@ -1097,11 +1185,14 @@ } /** -* Remove validator Rules for input -* @param inputId is id for input field -* @param rules is array of rule you want to remove -* @note: input field must have name same with id -*/ + * Remove validator Rules for input + * + * @param inputId + * is id for input field + * @param rules + * is array of rule you want to remove + * @note: input field must have name same with id + */ function removeValidatorRulesById( inputId, rules ) { removeValidatorRules( jQuery("#" + inputId), rules ); @@ -1125,35 +1216,50 @@ }); } -//============================================================================== -// MESSAGE -//============================================================================== +// ============================================================================== +// MESSAGE +// ============================================================================== /** -* Show message at the top-right of screen, this message will hide automatic after 3 second if you don't set time -* @param message is message -* @param time is time the message will hide after showed. Default is 3 second, set time is 0 if you don't want to hide this message -*/ + * Show message at the top-right of screen, this message will hide automatic + * after 3 second if you don't set time + * + * @param message + * is message + * @param time + * is time the message will hide after showed. Default is 3 second, + * set time is 0 if you don't want to hide this message + */ function showErrorMessage( message, time ) { jQuery.growlUI( i18n_error, message, 'error', time ); } /** -* Show message at the top-right of screen, this message will hide automatic after 3 second if you don't set time -* @param message is message -* @param time is time the message will hide after showed. Default is 3 second, set time is 0 if you don't want to hide this message -*/ + * Show message at the top-right of screen, this message will hide automatic + * after 3 second if you don't set time + * + * @param message + * is message + * @param time + * is time the message will hide after showed. Default is 3 second, + * set time is 0 if you don't want to hide this message + */ function showSuccessMessage( message, time ) { jQuery.growlUI( i18n_success, message, 'success', time ); } /** -* Show message at the top-right of screen, this message will hide automatic after 3 second if you don't set time -* @param message is message -* @param time is time the message will hide after showed. Default is 3 second, set time is 0 if you don't want to hide this message -*/ + * Show message at the top-right of screen, this message will hide automatic + * after 3 second if you don't set time + * + * @param message + * is message + * @param time + * is time the message will hide after showed. Default is 3 second, + * set time is 0 if you don't want to hide this message + */ function showWarningMessage( message, time ) { jQuery.growlUI( i18n_warning, message, 'warning', time ); @@ -1183,12 +1289,12 @@ } -//================================================================================= -// GUI -//================================================================================= +// ================================================================================= +// GUI +// ================================================================================= /** - * Clock screen by mask * + * Clock screen by mask * */ function lockScreen() { @@ -1203,7 +1309,7 @@ } }); } /** - * unClock screen * + * unClock screen * */ function unLockScreen() { @@ -1249,8 +1355,7 @@ unLockScreen(); } /** - * Removes the opacity div from the document. -function deleteDivEffect() + * Removes the opacity div from the document. function deleteDivEffect() */ function deleteDivEffect() { @@ -1280,8 +1385,7 @@ } /** - * Used to export PDF file by the given type and - * the active items in table + * Used to export PDF file by the given type and the active items in table */ function exportPdfByType( type ) { @@ -1290,8 +1394,8 @@ } /** - * Displays the div with the first argument id, and hides the divs with ids in - * the second array argument, except the id given in the first argument. + * Displays the div with the first argument id, and hides the divs with ids in + * the second array argument, except the id given in the first argument. */ function displayDiv( divId, divIds ) { $( "#" + divId ).show(); === modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/useraccount/updateUserAccountForm.js' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/useraccount/updateUserAccountForm.js 2011-03-14 09:46:14 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/useraccount/updateUserAccountForm.js 2011-03-15 14:49:49 +0000 @@ -1,5 +1,7 @@ -jQuery(document).ready(function() +jQuery( document ).ready( function() { + var r = getValidationRules(); + /* validation */ var rules = { oldPassword : { @@ -8,7 +10,7 @@ rawPassword : { required : false, password : true, - rangelength : [ 8, 35 ], + rangelength : r.user.password.length, notequalto : '#username' }, retypePassword : { @@ -17,54 +19,57 @@ }, surname : { required : true, - minlength : 2 + rangelength : r.user.name.length }, firstName : { required : true, - minlength : 2 + rangelength : r.user.name.length }, email : { - email : true + email : true, + rangelength : r.user.email.length }, - phoneNumber : {} + phoneNumber : { + rangelength : r.user.phone.length + } } - validation2('updateUserinforForm', updateUser, { + validation2( 'updateUserinforForm', updateUser, { 'rules' : rules - }); + } ); - jQuery("#rawPassword").attr("maxlength", "35"); - jQuery("#retypePassword").attr("maxlength", jQuery("#rawPassword").attr("maxlength")); - jQuery("#surname").attr("maxlength", "140"); - jQuery("#firstName").attr("maxlength", "140"); - jQuery("#email").attr("maxlength", "160"); - jQuery("#phoneNumber").attr("maxlength", "80"); + jQuery( "#rawPassword" ).attr( "maxlength", r.user.password.length[1] ); + jQuery( "#retypePassword" ).attr( "maxlength", r.user.password.length[1] ); + jQuery( "#surname" ).attr( "maxlength", r.user.name.length[1] ); + jQuery( "#firstName" ).attr( "maxlength", r.user.name.length[1] ); + jQuery( "#email" ).attr( "maxlength", r.user.email.length[1] ); + jQuery( "#phoneNumber" ).attr( "maxlength", r.user.phone.length[1] ); /* end validation */ - var oldPassword = byId('oldPassword'); + var oldPassword = byId( 'oldPassword' ); oldPassword.select(); oldPassword.focus(); -}); +} ); function updateUser() { var request = new Request(); - request.setResponseTypeXML('xmlObject'); - request.setCallbackSuccess(updateUserReceived); + request.setResponseTypeXML( 'xmlObject' ); + request.setCallbackSuccess( updateUserReceived ); - var params = "id=" + byId('id').value; - params += "&oldPassword=" + byId('oldPassword').value; - params += "&rawPassword=" + byId('rawPassword').value; - params += "&retypePassword=" + byId('retypePassword').value; - params += "&surname=" + byId('surname').value; - params += "&firstName=" + byId('firstName').value; - params += "&email=" + byId('email').value; - params += "&phoneNumber=" + byId('phoneNumber').value; - request.sendAsPost(params); - request.send('updateUserAccount.action'); + var params = "id=" + byId( 'id' ).value; + params += "&oldPassword=" + byId( 'oldPassword' ).value; + params += "&rawPassword=" + byId( 'rawPassword' ).value; + params += "&retypePassword=" + byId( 'retypePassword' ).value; + params += "&surname=" + byId( 'surname' ).value; + params += "&firstName=" + byId( 'firstName' ).value; + params += "&email=" + byId( 'email' ).value; + params += "&phoneNumber=" + byId( 'phoneNumber' ).value; + request.sendAsPost( params ); + request.send( 'updateUserAccount.action' ); } function updateUserReceived( xmlObject ) { - setMessage(xmlObject.firstChild.nodeValue); + setMessage( xmlObject.firstChild.nodeValue ); } === added file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/validationRules.json' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/validationRules.json 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/validationRules.json 2011-03-15 14:49:49 +0000 @@ -0,0 +1,36 @@ +{ + "user": { + "name": { + "length": [2,140] + }, + "username": { + "length": [2,140], + "firstletteralphabet" : true, + "alphanumeric" : true + }, + "password": { + "length": [8,35] + }, + "email": { + "length": [0,160] + }, + "phone": { + "length": [0,80] + } + }, + "role": { + "name": { + "length": [2,140] + }, + "description": { + "length": [2,210] + } + }, + "userGroup": { + "name": { + "length": [2,210], + "alphanumericwithbasicpuncspaces" : true, + "firstletteralphabet" : true + } + } +} \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addRoleForm.js' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addRoleForm.js 2011-03-14 21:10:15 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addRoleForm.js 2011-03-15 14:49:49 +0000 @@ -2,13 +2,16 @@ { jQuery( "#name" ).focus(); + var r = getValidationRules(); + var rules = { name : { required : true, - minlength : 2 + rangelength : r.role.name.length }, description : { - required : true + required : true, + rangelength : r.role.description.length } } @@ -21,10 +24,11 @@ 'rules' : rules } ); - jQuery( "#name" ).attr( "maxlength", "140" ); + jQuery( "#name" ).attr( "maxlength", r.role.name.length[1] ); + jQuery( "#description" ).attr( "maxlength", r.role.description.length[1] ); /* remote validation */ checkValueIsExist( "name", "validateRole.action" ); - sortList('availableListAuthority','ASC'); + sortList( 'availableListAuthority', 'ASC' ); } ); === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addUserForm.js' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addUserForm.js 2011-03-14 21:10:15 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addUserForm.js 2011-03-15 14:49:49 +0000 @@ -1,17 +1,19 @@ jQuery( document ).ready( function() { + var r = getValidationRules(); + var rules = { username : { required : true, - firstletteralphabet : true, - minlength : 2, - alphanumeric : true + firstletteralphabet : r.user.username.firstletteralphabet, + alphanumeric : r.user.username.alphanumeric, + rangelength : r.user.username.length }, rawPassword : { - required : false, + required : true, password : true, - rangelength : [ 8, 35 ], - notequalto : '#username' + notequalto : '#username', + rangelength : r.user.password.length }, retypePassword : { required : true, @@ -19,16 +21,19 @@ }, surname : { required : true, - minlength : 2 + rangelength : r.user.name.length }, firstName : { required : true, - minlength : 2 + rangelength : r.user.name.length }, email : { - email : true - }, - phoneNumber : {}, + email : true, + rangelength : r.user.email.length + }, + phoneNumber : { + rangelength : r.user.phone.length + }, roleValidator : { required : true } @@ -45,13 +50,13 @@ 'rules' : rules } ); - jQuery( "#username" ).attr( "maxlength", "140" ); - jQuery( "#rawPassword" ).attr( "maxlength", "35" ); - jQuery( "#retypePassword" ).attr( "maxlength", jQuery( "#rawPassword" ).attr( "maxlength" ) ); - jQuery( "#surname" ).attr( "maxlength", "140" ); - jQuery( "#firstName" ).attr( "maxlength", "140" ); - jQuery( "#email" ).attr( "maxlength", "160" ); - jQuery( "#phoneNumber" ).attr( "maxlength", "80" ); + jQuery( "#username" ).attr( "maxlength", r.user.username.length[1] ); + jQuery( "#rawPassword" ).attr( "maxlength", r.user.password.length[1] ); + jQuery( "#retypePassword" ).attr( "maxlength", r.user.password.length[1] ); + jQuery( "#surname" ).attr( "maxlength", r.user.name.length[1] ); + jQuery( "#firstName" ).attr( "maxlength", r.user.name.length[1] ); + jQuery( "#email" ).attr( "maxlength", r.user.email.length[1] ); + jQuery( "#phoneNumber" ).attr( "maxlength", r.user.phone.length[1] ); /* remote validation */ checkValueIsExist( "username", "validateUser.action" ); === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addUserGroupForm.js' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addUserGroupForm.js 2011-03-14 21:10:15 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/addUserGroupForm.js 2011-03-15 14:49:49 +0000 @@ -1,11 +1,13 @@ jQuery( document ).ready( function() { + var r = getValidationRules(); + var rules = { name : { required : true, - minlength : 2, - alphanumericwithbasicpuncspaces : true, - firstletteralphabet : true + alphanumericwithbasicpuncspaces : r.userGroup.name.alphanumericwithbasicpuncspaces, + firstletteralphabet : r.userGroup.name.firstletteralphabet, + rangelength : r.userGroup.name.length }, memberValidator : { required : true @@ -23,7 +25,7 @@ 'rules' : rules } ); - jQuery( "#name" ).attr( "maxlength", "210" ); + jQuery( "#name" ).attr( "maxlength", r.userGroup.name.length[1] ); /* remote validation */ checkValueIsExist( "name", "validateUserGroup.action" ); === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateRoleForm.js' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateRoleForm.js 2011-03-14 21:10:15 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateRoleForm.js 2011-03-15 14:49:49 +0000 @@ -2,13 +2,16 @@ { jQuery( "#name" ).focus(); + var r = getValidationRules(); + var rules = { name : { required : true, - minlength : 2 + rangelength : r.role.name.length }, description : { - required : true + required : true, + rangelength : r.role.description.length } }; @@ -21,7 +24,8 @@ 'rules' : rules } ); - jQuery( "#name" ).attr( "maxlength", "140" ); + jQuery( "#name" ).attr( "maxlength", r.role.name.length[1] ); + jQuery( "#description" ).attr( "maxlength", r.role.description.length[1] ); /* remote validation */ checkValueIsExist( "name", "validateRole.action", { === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateUserForm.js' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateUserForm.js 2011-03-14 21:10:15 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateUserForm.js 2011-03-15 14:49:49 +0000 @@ -1,27 +1,33 @@ jQuery( document ).ready( function() { + var r = getValidationRules(); + var rules = { rawPassword : { - rangelength : [ 8, 35 ], password : true, - notequalto : '#username' + notequalto : '#username', + rangelength : r.user.password.length }, retypePassword : { - rangelength : [ 8, 35 ], - equalTo : '#rawPassword' + required : false, + equalTo : '#rawPassword', + rangelength : r.user.password.length }, surname : { required : true, - minlength : 2 + rangelength : r.user.name.length }, firstName : { required : true, - minlength : 2 + rangelength : r.user.name.length }, email : { - email : true - }, - phoneNumber : {}, + email : true, + rangelength : r.user.email.length + }, + phoneNumber : { + rangelength : r.user.phone.length + }, roleValidator : { required : true } === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateUserGroupForm.js' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateUserGroupForm.js 2011-03-14 21:10:15 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/javascript/updateUserGroupForm.js 2011-03-15 14:49:49 +0000 @@ -1,13 +1,15 @@ jQuery( document ).ready( function() { + var r = getValidationRules(); + var rules = { - 'name' : { + name : { required : true, - minlength : 2, - alphanumericwithbasicpuncspaces : true, - firstletteralphabet : true + alphanumericwithbasicpuncspaces : r.userGroup.name.alphanumericwithbasicpuncspaces, + firstletteralphabet : r.userGroup.name.firstletteralphabet, + rangelength : r.userGroup.name.length }, - 'memberValidator' : { + memberValidator : { required : true } }; @@ -23,5 +25,5 @@ 'rules' : rules } ); - jQuery( "#name" ).attr( "maxlength", "210" ); + jQuery( "#name" ).attr( "maxlength", r.userGroup.name.length[1] ); } );