RT# 75817 - Added the ability to set contacts password on the backend
[freeside.git] / httemplate / elements / validate_password.html
index fd2cb6c..01e8b94 100644 (file)
@@ -5,8 +5,9 @@ To validate passwords via javascript/xmlhttp:
   <INPUT ID="password_field" TYPE="text">
   <DIV ID="password_field_result">
   <& '/elements/validate_password.html', 
-     fieldid  => 'password_field',
-     svcnum   => $svcnum
+      fieldid  => 'password_field',
+      svcnum   => $svcnum,
+      pkgnum   => $pkgnum, # used if the service doesn't exist yet
   &>
 
 The ID of the input field can be anything;  the ID of the DIV in which to display results
@@ -27,18 +28,24 @@ function add_password_validation (fieldid) {
     var resultfield = document.getElementById(fieldid);
     if (this.value) {
       resultfield.innerHTML = '<SPAN STYLE="color: blue;">Validating password...</SPAN>';
-      validate_password('fieldid',fieldid,'svcnum','<% $opt{'svcnum'} %>','password',this.value,
+      validate_password('fieldid',fieldid,
+                        'svcnum',<% $opt{'svcnum'} |js_string %>,
+                        'pkgnum',<% $opt{'pkgnum'} |js_string %>,
+                        'contactnum',<% $opt{'contactnum'} |js_string %>,
+                        'password',this.value,
         function (result) {
           result = JSON.parse(result);
           var resultfield = document.getElementById(result.fieldid);
           if (resultfield) {
+            var errorimg = '<IMG SRC="<% $p %>images/error.png" style="width: 1em; display: inline-block; padding-right: .5em">';
+            var validimg = '<IMG SRC="<% $p %>images/tick.png" style="width: 1em; display: inline-block; padding-right: .5em">';
             if (result.valid) {
-              resultfield.innerHTML = '<SPAN STYLE="color: green;">Password valid!</SPAN>';
+              resultfield.innerHTML = validimg+'<SPAN STYLE="color: green;">Password valid!</SPAN>';
             } else if (result.error) {
-              resultfield.innerHTML = '<SPAN STYLE="color: red;">'+result.error+'</SPAN>';
+              resultfield.innerHTML = errorimg+'<SPAN STYLE="color: red;">'+result.error+'</SPAN>';
             } else {
               result.syserror = result.syserror || 'Server error';
-              resultfield.innerHTML = '<SPAN STYLE="color: red;">'+result.syserror+'</SPAN>';
+              resultfield.innerHTML = errorimg+'<SPAN STYLE="color: red;">'+result.syserror+'</SPAN>';
             }
           }
         }