[freeside-commits] branch master updated. 8944f813b2d664b38bcbe349ac6897a0314e3b9d
Ivan Kohler
ivan at freeside.biz
Thu Aug 2 12:59:16 PDT 2018
The branch, master has been updated
via 8944f813b2d664b38bcbe349ac6897a0314e3b9d (commit)
from b617db414a0073ae69f7416d113541679f5d7bfd (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 8944f813b2d664b38bcbe349ac6897a0314e3b9d
Author: Ivan Kohler <ivan at freeside.biz>
Date: Thu Aug 2 12:59:15 2018 -0700
fix editing employee pw, RT#32456
diff --git a/httemplate/edit/process/access_user.html b/httemplate/edit/process/access_user.html
index fcd210f83..d589c620e 100644
--- a/httemplate/edit/process/access_user.html
+++ b/httemplate/edit/process/access_user.html
@@ -11,7 +11,7 @@
'target_table' => 'access_group',
},
'precheck_callback' => \&precheck_callback,
- #'post_new_object_callback' => \&post_new_object_callback,
+ 'post_new_object_callback' => \&post_new_object_callback,
'noerror_callback' => \&noerror_callback,
)
%>
@@ -38,24 +38,19 @@ sub precheck_callback {
return '';
}
-#sub post_new_object_callback {
-# my( $cgi, $access_user ) = @_;
-#
-# if ( length($cgi->param('_password')) ) {
-# my $password = scalar($cgi->param('_password'));
-# my $error = $access_user->is_password_allowed($password);
-# #XXX and then bubble the error back up to the UI
-# }
-#}
+sub post_new_object_callback {
+ my( $cgi, $access_user ) = @_;
+
+ return '' unless length($cgi->param('_password'));
+
+ my $password = scalar($cgi->param('_password'));
+ $access_user->is_password_allowed($password)
+ || $access_user->change_password_fields($password);
+}
sub noerror_callback {
my( $cgi, $access_user ) = @_;
- if ( length($cgi->param('_password')) ) {
- my $password = scalar($cgi->param('_password'));
- $access_user->change_password($password);
- }
-
#handle installer checkbox
my @sched_item = $access_user->sched_item;
my $sched_item = $sched_item[0];
diff --git a/httemplate/edit/process/elements/process.html b/httemplate/edit/process/elements/process.html
index c197eb123..85f060e32 100644
--- a/httemplate/edit/process/elements/process.html
+++ b/httemplate/edit/process/elements/process.html
@@ -80,8 +80,12 @@ Example:
'precheck_callback' => sub { my( $cgi ) = @_; },
#after the new object is created
+ #return an error string or empty for no error
'post_new_object_callback' => sub { my( $cgi, $object ) = @_; },
+ #run right before replacing (not run for inserts)
+ 'edit_callback' => sub { my( $new, $old ) = @_; },
+
#after everything's inserted
'noerror_callback' => sub { my( $cgi, $object ) = @_; },
diff --git a/httemplate/edit/process/saved_search.html b/httemplate/edit/process/saved_search.html
index 7ae7e0d78..51e40edad 100644
--- a/httemplate/edit/process/saved_search.html
+++ b/httemplate/edit/process/saved_search.html
@@ -10,6 +10,8 @@ my $callback = sub {
$obj->usernum( $FS::CurrentUser::CurrentUser->usernum );
# if this would change it from its existing owner, replace_check
# will refuse
+
+ ''; #no error
};
</%init>
-----------------------------------------------------------------------
Summary of changes:
httemplate/edit/process/access_user.html | 25 ++++++++++---------------
httemplate/edit/process/elements/process.html | 4 ++++
httemplate/edit/process/saved_search.html | 2 ++
3 files changed, 16 insertions(+), 15 deletions(-)
More information about the freeside-commits
mailing list