From 2eefefbe2f93bd6f306c7f73443028dbfd70782e Mon Sep 17 00:00:00 2001 From: Christopher Burger Date: Tue, 20 Jun 2017 09:04:14 -0400 Subject: RT# 75817 - Added the ability to set contacts password on the backend --- httemplate/elements/change_password.html | 36 +++++++++++++++++++++++------- httemplate/elements/contact.html | 16 +++++++++++++ httemplate/elements/validate_password.html | 2 +- 3 files changed, 45 insertions(+), 9 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/change_password.html b/httemplate/elements/change_password.html index a84e823d2..b3a432f95 100644 --- a/httemplate/elements/change_password.html +++ b/httemplate/elements/change_password.html @@ -8,19 +8,19 @@ display: none; } -(<% emt('change') %>) +(<% emt( $change_title ) %>)
- + <% $change_id_input %> <& /elements/random_pass.html, $pre.'password', 'randomize' &>
<& '/elements/validate_password.html', - 'fieldid' => $pre.'password', - 'svcnum' => $svc_acct->svcnum, - + 'fieldid' => $pre.'password', + 'svcnum' => $svcnum, + 'contactnum' => $contactnum, &> % if ( $error ) {
<% $error |h %> @@ -40,8 +40,28 @@ function <%$pre%>toggle(val) { <%init> my %opt = @_; -my $svc_acct = $opt{'svc_acct'}; + +my $contactnum = $opt{'contact_num'}; my $curr_value = $opt{'curr_value'} || ''; -my $pre = 'changepw'.$svc_acct->svcnum.'_'; -my $error = $cgi->param($pre.'error'); +my $change_title = $opt{'label'} || 'change'; + +my $svcnum; +my $change_id_input = ''; +my $pre = 'changepw'; + +if ($opt{'svc_acct'}) { + my $svc_acct = $opt{'svc_acct'}; + $change_id_input = ''; + $pre .= $svc_acct->svcnum . '_'; + $svcnum = $svc_acct->svcnum; +} +elsif ($opt{'contact_num'}) { + $change_id_input = ' + + + '; + $pre .= $opt{'contact_num'} . '_'; +} + + my $error = $cgi->param($pre.'error'); diff --git a/httemplate/elements/contact.html b/httemplate/elements/contact.html index b0a7caca1..8936569ce 100644 --- a/httemplate/elements/contact.html +++ b/httemplate/elements/contact.html @@ -84,6 +84,22 @@
<% $label{$field} %> +% } +% my $pwd_change_label = 'change password'; +% $pwd_change_label = 'setup password' unless $contact->_password; +% if ($curr_value) { + + + <& /elements/change_password.html, + 'contact_num' => $curr_value, + 'custnum' => $opt{'custnum'}, + 'curr_value' => '', + 'label' => $pwd_change_label, + &> + +
+ Password + % } diff --git a/httemplate/elements/validate_password.html b/httemplate/elements/validate_password.html index a488c4f16..bd385a6ca 100644 --- a/httemplate/elements/validate_password.html +++ b/httemplate/elements/validate_password.html @@ -27,7 +27,7 @@ function add_password_validation (fieldid) { var resultfield = document.getElementById(fieldid); if (this.value) { resultfield.innerHTML = 'Validating password...'; - validate_password('fieldid',fieldid,'svcnum','<% $opt{'svcnum'} %>','password',this.value, + validate_password('fieldid',fieldid,'svcnum','<% $opt{'svcnum'} %>','contactnum','<% $opt{'contactnum'} %>','password',this.value, function (result) { result = JSON.parse(result); var resultfield = document.getElementById(result.fieldid); -- cgit v1.2.1