summaryrefslogtreecommitdiff
path: root/ng_selfservice/elements/add_password_validation.php
diff options
context:
space:
mode:
authorMark Wells <mark@freeside.biz>2016-12-21 15:37:36 -0800
committerMark Wells <mark@freeside.biz>2016-12-21 15:37:36 -0800
commit0fa98e9782d550147a68a00d7ee75079ad331666 (patch)
treecdb726233df97e69e2047c636b63d7ba20b27857 /ng_selfservice/elements/add_password_validation.php
parent89d30bbd2b79d9b1de0890eec86234bc9d3ce330 (diff)
parentc5412ade1a2ce0eb26ffa37d1f3a1540760b2150 (diff)
Merge branch 'FREESIDE_3_BRANCH' of git.freeside.biz:/home/git/freeside into 3.x
Diffstat (limited to 'ng_selfservice/elements/add_password_validation.php')
-rw-r--r--ng_selfservice/elements/add_password_validation.php51
1 files changed, 51 insertions, 0 deletions
diff --git a/ng_selfservice/elements/add_password_validation.php b/ng_selfservice/elements/add_password_validation.php
new file mode 100644
index 000000000..6938437eb
--- /dev/null
+++ b/ng_selfservice/elements/add_password_validation.php
@@ -0,0 +1,51 @@
+<SCRIPT>
+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 = '<SPAN STYLE="color: blue;">Validating password...</SPAN>';
+ var validate_data = {
+ fieldid: fieldid,
+ check_password: this.value,
+ };
+ if (!nologin) {
+ validate_data['svcnum'] = svcnum;
+ }
+ $.ajax({
+ url: 'xmlrpc_validate_passwd.php',
+ data: validate_data,
+ method: 'POST',
+ success: function ( result ) {
+ result = JSON.parse(result);
+ var resultfield = document.getElementById(fieldid);
+ if (resultfield) {
+ var errorimg = '<IMG SRC="images/error.png" style="width: 1em; display: inline-block; padding-right: .5em">';
+ var validimg = '<IMG SRC="images/tick.png" style="width: 1em; display: inline-block; padding-right: .5em">';
+ if (result.password_valid) {
+ resultfield.innerHTML = validimg+'<SPAN STYLE="color: green;">Password valid!</SPAN>';
+ } else if (result.password_invalid) {
+ resultfield.innerHTML = errorimg+'<SPAN STYLE="color: red;">'+result.password_invalid+'</SPAN>';
+ } else {
+ resultfield.innerHTML = '';
+ }
+ }
+ },
+ error: function ( jqXHR, textStatus, errorThrown ) {
+ var resultfield = document.getElementById(fieldid);
+ console.log('ajax error: '+textStatus+'+'+errorThrown);
+ if (resultfield) {
+ resultfield.innerHTML = '';
+ }
+ },
+ });
+ }
+ };
+}
+</SCRIPT>