X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=opac%2Fopac-user.pl;h=d94d3d0e2bb36316412dfa15f4baf9c9e0bed627;hb=ec4b769ddbee9c06563c8f8c80dc09b086a0b120;hp=99a32ebb63a302f882a546b7a93cc1c75f81c390;hpb=0a07597f20f3e1f01ab23027bf7ae8ce720f8fce;p=srvgit diff --git a/opac/opac-user.pl b/opac/opac-user.pl index 99a32ebb63..d94d3d0e2b 100755 --- a/opac/opac-user.pl +++ b/opac/opac-user.pl @@ -27,8 +27,6 @@ use C4::Circulation; use C4::External::BakerTaylor qw( image_url link_url ); use C4::Reserves; use C4::Members; -use C4::Members::AttributeTypes; -use C4::Members::Attributes qw/GetBorrowerAttributeValue/; use C4::Output; use C4::Biblio; use C4::Items; @@ -45,6 +43,7 @@ use Koha::Patrons; use Koha::Patron::Messages; use Koha::Patron::Discharge; use Koha::Patrons; +use Koha::Token; use constant ATTRIBUTE_SHOW_BARCODE => 'SHOW_BCODE'; @@ -85,6 +84,18 @@ $template->param( shibbolethAuthentication => C4::Context->config('useshibboleth # get borrower information .... my $patron = Koha::Patrons->find( $borrowernumber ); + +if( $query->param('update_arc') && C4::Context->preference("AllowPatronToControlAutorenewal") ){ + die "Wrong CSRF token" + unless Koha::Token->new->check_csrf({ + session_id => scalar $query->cookie('CGISESSID'), + token => scalar $query->param('csrf_token'), + }); + + my $autorenew_checkouts = $query->param('borrower_autorenew_checkouts'); + $patron->autorenew_checkouts( $autorenew_checkouts )->store() if defined $autorenew_checkouts; +} + my $borr = $patron->unblessed; # unblessed is a hash vs. object/undef. Hence the use of curly braces here. my $borcat = $borr ? $borr->{categorycode} : q{}; @@ -135,6 +146,11 @@ if ( C4::Context->preference('OpacRenewalAllowed') ); } +my $maxoutstanding = C4::Context->preference('maxoutstanding'); +if ( $amountoutstanding && ( $amountoutstanding > $maxoutstanding ) ){ + $borr->{blockedonfines} = 1; +} + # Warningdate is the date that the warning starts appearing if ( $borr->{'dateexpiry'} && C4::Context->preference('NotifyBorrowerDeparture') ) { my $days_to_expiry = Date_to_Days( $warning_year, $warning_month, $warning_day ) - Date_to_Days( $today_year, $today_month, $today_day ); @@ -161,6 +177,9 @@ $template->param( surname => $borr->{surname}, RENEW_ERROR => $renew_error, borrower => $borr, + csrf_token => Koha::Token->new->generate_csrf({ + session_id => scalar $query->cookie('CGISESSID'), + }), ); #get issued items .... @@ -282,11 +301,11 @@ $template->param( canrenew => $canrenew ); $template->param( OVERDUES => \@overdues ); $template->param( overdues_count => $overdues_count ); -my $show_barcode = Koha::Patron::Attribute::Types->search( +my $show_barcode = Koha::Patron::Attribute::Types->search( # FIXME we should not need this search { code => ATTRIBUTE_SHOW_BARCODE } )->count; if ($show_barcode) { - my $patron_show_barcode = GetBorrowerAttributeValue($borrowernumber, ATTRIBUTE_SHOW_BARCODE); - undef $show_barcode if defined($patron_show_barcode) && !$patron_show_barcode; + my $patron_show_barcode = $patron->get_extended_attribute(ATTRIBUTE_SHOW_BARCODE); + undef $show_barcode if $patron_show_barcode and not $patron_show_barcode->attribute; } $template->param( show_barcode => 1 ) if $show_barcode;