Index: trunk/admin/include/tabs.js =================================================================== diff -u -N -r3983 -r8397 --- trunk/admin/include/tabs.js (.../tabs.js) (revision 3983) +++ trunk/admin/include/tabs.js (.../tabs.js) (revision 8397) @@ -37,7 +37,7 @@ } } else - field_result &= ValidateField(Field.value, ValType[j]); + field_result &= ValidateField(Field.value, ValType[j], Field); j++; } span.className = field_result ? 'text' : 'validation_error'; @@ -75,7 +75,22 @@ switch(ValidateAs) { case 'exists': // field is required - if(FieldValue.length == 0) result = false; + var $Field = RePasswdValue; + switch ($Field.type) { + case 'radio': + result = false; + var $radio = document.getElementsByName($Field.name); + for (var $i = 0; $i < $radio.length; $i++) { + if ($radio[$i].checked) { + result = true; + break; + } + } + break; + default: + if(FieldValue.length == 0) result = false; + break; + } break; case 'integer': // field must be integer number @@ -109,19 +124,16 @@ var span_id = ''; var result = true; - for (var i = 0; i < f.elements.length; i++) - { + for (var i = 0; i < f.elements.length; i++) { ValType = ''; Field = f.elements[i]; ValType = Field.getAttribute('ValidationType'); - if(ValType) - { + if (ValType) { ValType = ValType.split(','); - if( InArray(ValType,'exists') !== false ) - { + if ((InArray(ValType,'exists') !== false) && (span_id != 'prompt_' + Field.name)) { span_id = 'prompt_' + Field.name; span = document.getElementById(span_id); - span.innerHTML = span.innerHTML + '*'; + span.innerHTML += '*'; } } }