function add_password_validation (fieldid,nologin) {
var inputfield = document.getElementById(fieldid);
inputfield.onchange = function () {
var fieldid = this.id+'_result';
var resultfield = document.getElementById(fieldid);
var svcnum = '';
var svcfield = document.getElementById(this.id+'_svcnum');
if (svcfield) {
svcnum = svcfield.options[svcfield.selectedIndex].value;
}
if (this.value) {
resultfield.innerHTML = 'Validating password...';
var action = nologin ? 'validate_password_nologin' : 'validate_password';
send_xmlhttp('selfservice.cgi',
['action',action,'fieldid',fieldid,'svcnum',svcnum,'check_password',this.value],
function (result) {
result = JSON.parse(result);
var resultfield = document.getElementById(result.fieldid);
if (resultfield) {
var errorimg = '';
var validimg = '';
if (result.valid) {
resultfield.innerHTML = validimg+'Password valid!';
} else if (result.error) {
resultfield.innerHTML = errorimg+''+result.error+'';
} else {
result.syserror = result.syserror || 'Server error';
resultfield.innerHTML = errorimg+''+result.syserror+'';
}
}
}
);
} else {
resultfield.innerHTML = '';
}
};
}