% }
<DIV ID="<%$pre%>form" CLASS="passwordbox">
% if (!$opt{'noformtag'}) {
- <FORM METHOD="POST" ACTION="<%$fsurl%>misc/process/change-password.html">
+ <FORM METHOD="POST" ACTION="<%$fsurl%>misc/process/change-password.html" onsubmit="return checkPasswordValidation()">
% }
<% $change_id_input %>
'contactnum' => $opt{'contact_num'},
'submitid' => $change_button_id,
&>
-% if ( $error ) {
- <BR><SPAN STYLE="color: #ff0000"><% $error |h %></SPAN>
-% }
% if (!$opt{'noformtag'}) {
</FORM>
toggle ? 'none' : 'inline';
% }
}
+
+function checkPasswordValidation() {
+ var validationResult = document.getElementById('<%$pre%>password_result').innerHTML;
+ if (validationResult.match(/Password valid!/)) {
+ return true;
+ }
+ else {
+ return false;
+ }
+}
</SCRIPT>
<%init>
my %opt = @_;
<SCRIPT>
function add_password_validation (fieldid, submitid) {
var inputfield = document.getElementById(fieldid);
+ inputfield.onkeydown = function(e) {
+ var key;
+ if (window.event) { key = window.event.keyCode; }
+ else { key = e.which; }
+ if (key == '13') {
+ var check = checkPasswordValidation();
+ return check;
+ }
+ }
inputfield.onkeyup = function () {
var fieldid = this.id+'_result';
var resultfield = document.getElementById(fieldid);
% $cgi->param('contactnum', $contactnum);
% $cgi->param("changepw${contactnum}_error", $error);
% }
+% $cgi->param('error', $error);
% } else {
% if ($svcnum) { $cgi->query_string($svcnum); }
% elsif ($contactnum) { $cgi->query_string($contactnum); }
! $part_svc->restrict_edit_password )
);
- my $error = $svc_acct->is_password_allowed($newpass)
+ $error = $svc_acct->is_password_allowed($newpass)
|| $svc_acct->set_password($newpass)
|| $svc_acct->replace;
my $contact = qsearchs('contact', { 'contactnum' => $contactnum } )
or return { 'error' => "Contact not found" . $contactnum };
- my $error = $contact->is_password_allowed($newpass)
+ $error = $contact->is_password_allowed($newpass)
|| $contact->change_password($newpass);
# annoyingly specific to view/svc_acct.cgi, for now...
"javascript:areyousure(\'${p}misc/cancel-unaudited.cgi?$svcnum\')",
) &>
-% }
+% }
+<& /elements/error.html &>
<& elements/svc_radius_usage.html,
'svc' => $svc_acct,