Bugzilla – Attachment 11475 Details for
Bug 7560
SIP Self Checkout Ignoring Fines Thresholds for Not Being able to Check Out Books
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 7560 - SIP Self Checkout Ignoring Fines Thresholds for Not Being able to Check Out Books
Bug-7560---SIP-Self-Checkout-Ignoring-Fines-Thresh.patch (text/plain), 3.14 KB, created by
Chris Cormack
on 2012-08-09 08:11:10 UTC
(
hide
)
Description:
Bug 7560 - SIP Self Checkout Ignoring Fines Thresholds for Not Being able to Check Out Books
Filename:
MIME Type:
Creator:
Chris Cormack
Created:
2012-08-09 08:11:10 UTC
Size:
3.14 KB
patch
obsolete
>From 1363c17a1a368260e600ced7f9422f60333d320f Mon Sep 17 00:00:00 2001 >From: Kyle M Hall <kyle@bywatersolutions.com> >Date: Mon, 20 Feb 2012 08:01:46 -0500 >Subject: [PATCH] Bug 7560 - SIP Self Checkout Ignoring Fines Thresholds for > Not Being able to Check Out Books > >Add checks in C4::ILS::Patron and C4::ILS::Transaction::Renew to make sure the patron >is below the noissuescharge system pref for issues and OPACFineNoRenewals for renewals. > >Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> >--- > C4/Overdues.pm | 20 ++++++++++++++++++++ > C4/SIP/ILS/Patron.pm | 4 ++-- > C4/SIP/ILS/Transaction/Renew.pm | 7 +++++++ > 3 files changed, 29 insertions(+), 2 deletions(-) > >diff --git a/C4/Overdues.pm b/C4/Overdues.pm >index d17f445..9505212 100644 >--- a/C4/Overdues.pm >+++ b/C4/Overdues.pm >@@ -53,6 +53,7 @@ BEGIN { > &GetOverdueDelays > &GetOverduerules > &GetFine >+ &GetTotalFines > &CreateItemAccountLine > &ReplacementCost2 > >@@ -692,6 +693,25 @@ sub GetFine { > return 0; > } > >+=head2 GetTotalFines >+ >+ my $total_fines_owed = GetTotalFines( $borrowernumber ); >+ >+ Returns the total amount owed by the given borrower. >+ >+=cut >+ >+sub GetTotalFines { >+ my ( $borrowernumber ) = @_; >+ my $dbh = C4::Context->dbh(); >+ my $query = "SELECT SUM( amountoutstanding ) AS total FROM accountlines WHERE borrowernumber = ?"; >+ my $sth = $dbh->prepare( $query ); >+ $sth->execute( $borrowernumber ); >+ my $row = $sth->fetchrow_hashref(); >+ my $total = $row->{'total'}; >+ $total = $total || 0; >+ return $total; >+} > > =head2 GetIssuingRules > >diff --git a/C4/SIP/ILS/Patron.pm b/C4/SIP/ILS/Patron.pm >index d3a9762..b6639cb 100644 >--- a/C4/SIP/ILS/Patron.pm >+++ b/C4/SIP/ILS/Patron.pm >@@ -86,8 +86,8 @@ sub new { > address => $adr, > home_phone => $kp->{phone}, > email_addr => $kp->{email}, >- charge_ok => ( !$debarred && !$expired ), >- renew_ok => ( !$debarred && !$expired ), >+ charge_ok => ( !$debarred && !$expired && ( $fines_amount < C4::Context->preference('noissuescharge') ) ), >+ renew_ok => ( !$debarred && !$expired && ( $fines_amount < C4::Context->preference('OPACFineNoRenewals') ) ), > recall_ok => ( !$debarred && !$expired ), > hold_ok => ( !$debarred && !$expired ), > card_lost => ( $kp->{lost} || $kp->{gonenoaddress} || $flags->{LOST} ), >diff --git a/C4/SIP/ILS/Transaction/Renew.pm b/C4/SIP/ILS/Transaction/Renew.pm >index 57db003..5fef1d4 100644 >--- a/C4/SIP/ILS/Transaction/Renew.pm >+++ b/C4/SIP/ILS/Transaction/Renew.pm >@@ -34,7 +34,14 @@ sub new { > sub do_renew_for { > my $self = shift; > my $borrower = shift; >+ > my ($renewokay,$renewerror) = CanBookBeRenewed($borrower->{borrowernumber},$self->{item}->{itemnumber}); >+ >+ unless ( C4::Overdues::GetTotalFines($borrower->{borrowernumber}) < C4::Context->preference('OPACFineNoRenewals') ) { >+ $renewokay = 0; >+ $renewerror = 'too_many_fines' >+ } >+ > if ($renewokay){ > $self->{due} = AddIssue( $borrower, $self->{item}->id, undef, 0 ); > $self->renewal_ok(1); >-- >1.7.10.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 7560
:
7772
|
11475
|
16044
|
16045
|
16047
|
16048
|
18194
|
18195
|
18196
|
18198
|
18199
|
18200
|
20004
|
20005
|
20006
|
42595
|
42596
|
42597
|
43587
|
43777
|
50398