View | Details | Raw Unified | Return to bug 7243
Collapse All | Expand All

(-)a/C4/Circulation.pm (-13 / +13 lines)
Lines 771-797 sub CanBookBeIssued { Link Here
771
    #
771
    #
772
772
773
    # DEBTS
773
    # DEBTS
774
    my ($ballance, $non_issue_ballance, $other_charges) =
774
    my ($ballance, $non_issue_charges, $other_charges) =
775
      C4::Members::GetMemberAccountBallance( $borrower->{'borrowernumber'} );
775
      C4::Members::GetMemberAccountBallance( $borrower->{'borrowernumber'} );
776
    my $amountlimit = C4::Context->preference("noissuescharge");
776
    my $amountlimit = C4::Context->preference("noissuescharge");
777
    my $allowfineoverride = C4::Context->preference("AllowFineOverride");
777
    my $allowfineoverride = C4::Context->preference("AllowFineOverride");
778
    my $allfinesneedoverride = C4::Context->preference("AllFinesNeedOverride");
778
    my $allfinesneedoverride = C4::Context->preference("AllFinesNeedOverride");
779
    if ( C4::Context->preference("IssuingInProcess") ) {
779
    if ( C4::Context->preference("IssuingInProcess") ) {
780
        if ( $non_issue_ballance > $amountlimit && !$inprocess && !$allowfineoverride) {
780
        if ( $non_issue_charges > $amountlimit && !$inprocess && !$allowfineoverride) {
781
            $issuingimpossible{DEBT} = sprintf( "%.2f", $non_issue_ballance );
781
            $issuingimpossible{DEBT} = sprintf( "%.2f", $non_issue_charges );
782
        } elsif ( $non_issue_ballance > $amountlimit && !$inprocess && $allowfineoverride) {
782
        } elsif ( $non_issue_charges > $amountlimit && !$inprocess && $allowfineoverride) {
783
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_ballance );
783
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_charges );
784
        } elsif ( $allfinesneedoverride && $non_issue_ballance > 0 && $non_issue_ballance <= $amountlimit && !$inprocess ) {
784
        } elsif ( $allfinesneedoverride && $non_issue_charges > 0 && $non_issue_charges <= $amountlimit && !$inprocess ) {
785
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_ballance );
785
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_charges );
786
        }
786
        }
787
    }
787
    }
788
    else {
788
    else {
789
        if ( $non_issue_ballance > $amountlimit && $allowfineoverride ) {
789
        if ( $non_issue_charges > $amountlimit && $allowfineoverride ) {
790
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_ballance );
790
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_charges );
791
        } elsif ( $non_issue_ballance > $amountlimit && !$allowfineoverride) {
791
        } elsif ( $non_issue_charges > $amountlimit && !$allowfineoverride) {
792
            $issuingimpossible{DEBT} = sprintf( "%.2f", $non_issue_ballance );
792
            $issuingimpossible{DEBT} = sprintf( "%.2f", $non_issue_charges );
793
        } elsif ( $non_issue_ballance > 0 && $allfinesneedoverride ) {
793
        } elsif ( $non_issue_charges > 0 && $allfinesneedoverride ) {
794
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_ballance );
794
            $needsconfirmation{DEBT} = sprintf( "%.2f", $non_issue_charges );
795
        }
795
        }
796
    }
796
    }
797
    if ($ballance > 0 && $other_charges > 0) {
797
    if ($ballance > 0 && $other_charges > 0) {
(-)a/C4/Members.pm (-4 / +4 lines)
Lines 1148-1163 Calculates amount immediately owing by the patron - non-issue charges. Link Here
1148
Based on GetMemberAccountRecords.
1148
Based on GetMemberAccountRecords.
1149
Charges exempt from non-issue are:
1149
Charges exempt from non-issue are:
1150
* Res (reserves)
1150
* Res (reserves)
1151
* Rent (rental) if RentalsInNoissueCharges syspref is set to false
1151
* Rent (rental) if RentalsInNoissuesCharge syspref is set to false
1152
* Manual invoices if ManInvInNoissueCharges syspref is set to false
1152
* Manual invoices if ManInvInNoissuesCharge syspref is set to false
1153
1153
1154
=cut
1154
=cut
1155
1155
1156
my $ACCOUNT_TYPE_LENGTH = 5; # this is plain ridiculous...
1156
my $ACCOUNT_TYPE_LENGTH = 5; # this is plain ridiculous...
1157
1157
1158
my @not_fines = ('Res');
1158
my @not_fines = ('Res');
1159
push @not_fines, 'Rent' unless C4::Context->preference('RentalsInNoissueCharges');
1159
push @not_fines, 'Rent' unless C4::Context->preference('RentalsInNoissuesCharge');
1160
unless ( C4::Context->preference('ManInvInNoissueCharges') ) {
1160
unless ( C4::Context->preference('ManInvInNoissuesCharge') ) {
1161
    my $dbh = C4::Context->dbh;
1161
    my $dbh = C4::Context->dbh;
1162
    my $man_inv_types = $dbh->selectcol_arrayref(qq{SELECT authorised_value FROM authorised_values WHERE category = 'MANUAL_INV'});
1162
    my $man_inv_types = $dbh->selectcol_arrayref(qq{SELECT authorised_value FROM authorised_values WHERE category = 'MANUAL_INV'});
1163
    push @not_fines, map substr($_, 0, $ACCOUNT_TYPE_LENGTH), @$man_inv_types;
1163
    push @not_fines, map substr($_, 0, $ACCOUNT_TYPE_LENGTH), @$man_inv_types;
(-)a/installer/data/mysql/sysprefs.sql (-2 / +2 lines)
Lines 327-334 INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES Link Here
327
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('EasyAnalyticalRecords','0','If on, display in the catalogue screens tools to easily setup analytical record relationships','','YesNo');
327
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('EasyAnalyticalRecords','0','If on, display in the catalogue screens tools to easily setup analytical record relationships','','YesNo');
328
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacShowRecentComments',0,'If ON a link to recent comments will appear in the OPAC masthead',NULL,'YesNo');
328
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacShowRecentComments',0,'If ON a link to recent comments will appear in the OPAC masthead',NULL,'YesNo');
329
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('CircAutoPrintQuickSlip', '1', 'Choose what should happen when an empty barcode field is submitted in circulation: Display a print quick slip window or Clear the screen.',NULL,'YesNo');
329
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('CircAutoPrintQuickSlip', '1', 'Choose what should happen when an empty barcode field is submitted in circulation: Display a print quick slip window or Clear the screen.',NULL,'YesNo');
330
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('RentalsInNoissueCharges', '1', 'Include rental charges when summing up charges for NoissueCharge.',NULL,'YesNo');
330
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('RentalsInNoissuesCharge', '1', 'Rental charges block checkouts (added to noissuescharge).',NULL,'YesNo');
331
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('ManInvInNoissueCharges', '1', 'Include MAN_INV charges when summing up charges for NoissueCharge.',NULL,'YesNo');
331
INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('ManInvInNoissuesCharge', '1', 'MAN_INV charges block checkouts (added to noissuescharge).',NULL,'YesNo');
332
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('NoticeCSS','','Notices CSS url.',NULL,'free');
332
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('NoticeCSS','','Notices CSS url.',NULL,'free');
333
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('SlipCSS','','Slips CSS url.',NULL,'free');
333
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('SlipCSS','','Slips CSS url.',NULL,'free');
334
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('TransferWhenCancelAllWaitingHolds','0','Transfer items when cancelling all waiting holds',NULL,'YesNo');
334
INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('TransferWhenCancelAllWaitingHolds','0','Transfer items when cancelling all waiting holds',NULL,'YesNo');
(-)a/installer/data/mysql/updatedatabase.pl (-3 / +3 lines)
Lines 6024-6032 if (C4::Context->preference("Version") < TransformToNum($DBversion)) { Link Here
6024
6024
6025
$DBversion = "3.09.00.XXX";
6025
$DBversion = "3.09.00.XXX";
6026
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
6026
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
6027
    $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('RentalsInNoissueCharges', '1', 'Include rental charges when summing up charges for NoissueCharge.',NULL,'YesNo');");
6027
    $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('RentalsInNoissuesCharge', '1', 'Rental charges block checkouts (added to noissuescharge).',NULL,'YesNo');");
6028
    $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('ManInvInNoissueCharges', '1', 'Include MAN_INV charges when summing up charges for NoissueCharge.',NULL,'YesNo');");
6028
    $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('ManInvInNoissuesCharge', '1', 'MAN_INV charges block checkouts (added to noissuescharge).',NULL,'YesNo');");
6029
    print "Upgrade to $DBversion done (Add sysprefs RentalsInNoissueCharges and ManInvInNoissueCharges.)\n";
6029
    print "Upgrade to $DBversion done (Add sysprefs RentalsInNoissuesCharge and ManInvInNoissuesCharge.)\n";
6030
    SetVersion($DBversion);
6030
    SetVersion($DBversion);
6031
}
6031
}
6032
6032
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref (-5 / +4 lines)
Lines 259-275 Circulation: Link Here
259
              class: integer
259
              class: integer
260
            - '[% local_currency %] in fines.'
260
            - '[% local_currency %] in fines.'
261
        -
261
        -
262
            - pref: RentalsInNoissueCharges
262
            - pref: RentalsInNoissuesCharge
263
              choices:
263
              choices:
264
                  yes: Include
264
                  yes: Include
265
                  no: "Don't include"
265
                  no: "Don't include"
266
            - rental charges when summing up charges for NoissueCharge.
266
            - rental charges when summing up charges for noissuescharge.
267
        -
267
        -
268
            - pref: ManInvInNoissueCharges
268
            - pref: ManInvInNoissuesCharge
269
              choices:
269
              choices:
270
                  yes: Include
270
                  yes: Include
271
                  no: "Don't include"
271
                  no: "Don't include"
272
            - MAN_INV charges when summing up charges for NoissueCharge.
272
            - MAN_INV charges when summing up charges for noissuescharge.
273
        -
273
        -
274
            - pref: ReturnBeforeExpiry
274
            - pref: ReturnBeforeExpiry
275
              choices:
275
              choices:
276
- 

Return to bug 7243