X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fedit%2Fprocess%2Faccess_user.html;h=c27262017e414f2e927666a9b45a222ff6b163a6;hp=fcd210f83c57569517b2dcc38fa4898f49208fe9;hb=3f2a7b01b59902faed5767d81e2959e131bdbdfd;hpb=d45dd4a826f314fb5459747590d3e11cd80c211f diff --git a/httemplate/edit/process/access_user.html b/httemplate/edit/process/access_user.html index fcd210f83..c27262017 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,22 @@ 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')); + my $error = $access_user->is_password_allowed($password); + return $error if $error; + + $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];