mirror of
https://github.com/Combodo/iTop.git
synced 2026-03-06 09:34:13 +01:00
- Fixed Trac #224: properly validate non-mandatory integer fields.
SVN:trunk[768]
This commit is contained in:
@@ -1078,7 +1078,12 @@ abstract class cmdbAbstractObject extends CMDBObject
|
||||
$sPattern = addslashes($oAttDef->GetValidationPattern()); //'^([0-9]+)$';
|
||||
if (!empty($aEventsList))
|
||||
{
|
||||
$oPage->add_ready_script("$('#$iId').bind('".implode(' ', $aEventsList)."', function(evt, sFormId) { return ValidateField('$iId', '$sPattern', $bMandatory, sFormId) } );"); // Bind to a custom event: validate
|
||||
$sNullValue = $oAttDef->GetNullValue();
|
||||
if (!is_numeric($sNullValue))
|
||||
{
|
||||
$sNullValue = "'$sNullValue'"; // Add quotes to turn this into a JS string if it's not a number
|
||||
}
|
||||
$oPage->add_ready_script("$('#$iId').bind('".implode(' ', $aEventsList)."', function(evt, sFormId) { return ValidateField('$iId', '$sPattern', $bMandatory, sFormId, $sNullValue) } );"); // Bind to a custom event: validate
|
||||
}
|
||||
$aDependencies = MetaModel::GetDependentAttributes($sClass, $sAttCode); // List of attributes that depend on the current one
|
||||
if (count($aDependencies) > 0)
|
||||
|
||||
@@ -150,15 +150,15 @@ function CheckFields(sFormId, bDisplayAlert)
|
||||
return (oFormErrors['err_'+sFormId] == 0); // If no error, submit the form
|
||||
}
|
||||
|
||||
function ValidateField(sFieldId, sPattern, bMandatory, sFormId)
|
||||
function ValidateField(sFieldId, sPattern, bMandatory, sFormId, nullValue)
|
||||
{
|
||||
var bValid = true;
|
||||
var currentVal = $('#'+sFieldId).val();
|
||||
if (bMandatory && ((currentVal == '') || (currentVal == 0) || (currentVal == '[]')))
|
||||
if (bMandatory && (currentVal == nullValue))
|
||||
{
|
||||
bValid = false;
|
||||
}
|
||||
else if ((currentVal == '') || (currentVal == 0) || (currentVal == '[]'))
|
||||
else if (currentVal == nullValue)
|
||||
{
|
||||
// An empty field is Ok...
|
||||
bValid = true;
|
||||
|
||||
Reference in New Issue
Block a user