|
Lines 28-38
my ( $template, $loggedinuser, $cookie, $staffflags ) = get_template_and_user(
Link Here
|
| 28 |
template_name => "members/member-password.tt", |
28 |
template_name => "members/member-password.tt", |
| 29 |
query => $input, |
29 |
query => $input, |
| 30 |
type => "intranet", |
30 |
type => "intranet", |
| 31 |
flagsrequired => { borrowers => 'edit_borrowers' }, |
31 |
flagsrequired => { catalogue => 1 }, |
| 32 |
} |
32 |
} |
| 33 |
); |
33 |
); |
| 34 |
|
34 |
|
| 35 |
my $patron_id = $input->param('member'); |
35 |
my $patron_id = $input->param('member'); |
|
|
36 |
my $logged_in_user = Koha::Patrons->find( $loggedinuser ); |
| 37 |
|
| 38 |
if ( !$logged_in_user->has_permission({ borrowers => 'edit_borrowers' }) and $loggedinuser != $patron_id ) { |
| 39 |
print $input->redirect("/cgi-bin/koha/errors/404.pl"); |
| 40 |
|
| 41 |
} else { |
| 42 |
# patron has permission to edit other borrowers, or is changing their own password |
| 43 |
|
| 36 |
my $destination = $input->param('destination'); |
44 |
my $destination = $input->param('destination'); |
| 37 |
my $newpassword = $input->param('newpassword'); |
45 |
my $newpassword = $input->param('newpassword'); |
| 38 |
my $newpassword2 = $input->param('newpassword2'); |
46 |
my $newpassword2 = $input->param('newpassword2'); |
|
Lines 40-46
my $new_user_id = $input->param('newuserid');
Link Here
|
| 40 |
|
48 |
|
| 41 |
my @errors; |
49 |
my @errors; |
| 42 |
|
50 |
|
| 43 |
my $logged_in_user = Koha::Patrons->find( $loggedinuser ); |
|
|
| 44 |
my $patron = Koha::Patrons->find( $patron_id ); |
51 |
my $patron = Koha::Patrons->find( $patron_id ); |
| 45 |
output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); |
52 |
output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); |
| 46 |
|
53 |
|
|
Lines 68-74
if ( $newpassword and not @errors) {
Link Here
|
| 68 |
$patron->userid($new_user_id)->store |
75 |
$patron->userid($new_user_id)->store |
| 69 |
if $new_user_id and $new_user_id ne $patron->userid; |
76 |
if $new_user_id and $new_user_id ne $patron->userid; |
| 70 |
$template->param( newpassword => $newpassword ); |
77 |
$template->param( newpassword => $newpassword ); |
| 71 |
if ( $destination eq 'circ' ) { |
78 |
if ( !$patron->has_permission({ borrowers => 'edit_borrowers' }) ) { |
|
|
79 |
print $input->redirect("/cgi-bin/koha/mainpage.pl"); |
| 80 |
} |
| 81 |
elsif ( $destination eq 'circ' ) { |
| 72 |
print $input->redirect("/cgi-bin/koha/circ/circulation.pl?findborrower=" . $patron->cardnumber); |
82 |
print $input->redirect("/cgi-bin/koha/circ/circulation.pl?findborrower=" . $patron->cardnumber); |
| 73 |
} |
83 |
} |
| 74 |
else { |
84 |
else { |
|
Lines 107-110
if ( scalar(@errors) ) {
Link Here
|
| 107 |
} |
117 |
} |
| 108 |
} |
118 |
} |
| 109 |
|
119 |
|
|
|
120 |
} # patron has permission to edit other borrowers, or is changing their own password |
| 121 |
|
| 110 |
output_html_with_http_headers $input, $cookie, $template->output; |
122 |
output_html_with_http_headers $input, $cookie, $template->output; |
| 111 |
- |
|
|