X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=fs_selfservice%2FFS-SelfService%2Fcgi%2Fadd_password_validation.js;fp=fs_selfservice%2FFS-SelfService%2Fcgi%2Fadd_password_validation.js;h=e2e3227f1462c871b6daab5f0f8b2c7208cb7116;hb=4b147e668c23fd3011885ed94d84f4f3bb27c71f;hp=0000000000000000000000000000000000000000;hpb=7c08f01e1a05fe4bab903bd44277b5c3784aebc5;p=freeside.git
diff --git a/fs_selfservice/FS-SelfService/cgi/add_password_validation.js b/fs_selfservice/FS-SelfService/cgi/add_password_validation.js
new file mode 100644
index 000000000..e2e3227f1
--- /dev/null
+++ b/fs_selfservice/FS-SelfService/cgi/add_password_validation.js
@@ -0,0 +1,38 @@
+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 = '';
+ }
+ };
+}
+