@@ -, +, @@ be issued to a new patron without staff confirmation but are instead alerted that is had been checked out to another patron! --- C4/Circulation.pm | 15 ++++-- installer/data/mysql/atomicupdate/bug_17171.perl | 10 ++++ installer/data/mysql/sysprefs.sql | 1 + .../csv_headers/reports/cash_register_stats.tt | 2 +- .../en/modules/admin/preferences/circulation.pref | 6 +++ .../prog/en/modules/circ/circulation.tt | 4 ++ t/db_dependent/Circulation.t | 58 +++++++++++++++++++++- 7 files changed, 89 insertions(+), 7 deletions(-) create mode 100644 installer/data/mysql/atomicupdate/bug_17171.perl --- a/C4/Circulation.pm +++ a/C4/Circulation.pm @@ -980,11 +980,16 @@ sub CanBookBeIssued { $issuingimpossible{RETURN_IMPOSSIBLE} = 1; $issuingimpossible{branch_to_return} = $message; } else { - $needsconfirmation{ISSUED_TO_ANOTHER} = 1; - $needsconfirmation{issued_firstname} = $patron->firstname; - $needsconfirmation{issued_surname} = $patron->surname; - $needsconfirmation{issued_cardnumber} = $patron->cardnumber; - $needsconfirmation{issued_borrowernumber} = $patron->borrowernumber; + if ( C4::Context->preference('AutoReturnCheckedOutItems') ) { + $alerts{RETURNED_FROM_ANOTHER} = { patron => $patron }; + } + else { + $needsconfirmation{ISSUED_TO_ANOTHER} = 1; + $needsconfirmation{issued_firstname} = $patron->firstname; + $needsconfirmation{issued_surname} = $patron->surname; + $needsconfirmation{issued_cardnumber} = $patron->cardnumber; + $needsconfirmation{issued_borrowernumber} = $patron->borrowernumber; + } } } --- a/installer/data/mysql/atomicupdate/bug_17171.perl +++ a/installer/data/mysql/atomicupdate/bug_17171.perl @@ -0,0 +1,10 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if( CheckVersion( $DBversion ) ) { + $dbh->do(q{ + INSERT IGNORE INTO `systempreferences` (`variable`, `value`, `options`, `explanation`, `type`) VALUES + ('AutoReturnCheckedOutItems', '0', '', 'If disabled, librarian must confirm return of checked out item when checking out to another.', 'YesNo'); + }); + + SetVersion( $DBversion ); + print "Upgrade to $DBversion done (Bug 17171 - Add a syspref to allow currently issued items to be issued to a new patron without staff confirmation)\n"; +} --- a/installer/data/mysql/sysprefs.sql +++ a/installer/data/mysql/sysprefs.sql @@ -68,6 +68,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('AutoSelfCheckAllowed','0','','For corporate and special libraries which want web-based self-check available from any PC without the need for a manual staff login. Most libraries will want to leave this turned off. If on, requires self-check ID and password to be entered in AutoSelfCheckID and AutoSelfCheckPass sysprefs.','YesNo'), ('AutoSelfCheckID','','','Staff ID with circulation rights to be used for automatic web-based self-check. Only applies if AutoSelfCheckAllowed syspref is turned on.','free'), ('AutoSelfCheckPass','','','Password to be used for automatic web-based self-check. Only applies if AutoSelfCheckAllowed syspref is turned on.','free'), +('AutoReturnCheckedOutItems', '0', '', 'If disabled, librarian must confirm return of checked out item when checking out to another.', 'YesNo'), ('Babeltheque','0','','Turn ON Babeltheque content - See babeltheque.com to subscribe to this service','YesNo'), ('Babeltheque_url_js','','','Url for Babeltheque javascript (e.g. http://www.babeltheque.com/bw_XX.js)','Free'), ('Babeltheque_url_update','','','Url for Babeltheque update (E.G. http://www.babeltheque.com/.../file.csv.bz2)','Free'), --- a/koha-tmpl/intranet-tmpl/prog/en/includes/csv_headers/reports/cash_register_stats.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/includes/csv_headers/reports/cash_register_stats.tt @@ -1, +1, @@ -mfirstname[% sep %]card number[% sep %]firstname[% sep %]branchname[% sep %]date[% sep %]accounttype[% sep %]amount[% sep %]title[% sep %]barcode[% sep %]itype +mfirstname[% sep %]card number[% sep %]firstname[% sep %]branchname[% sep %]date[% sep %]accounttype[% sep %]amount[% sep %]title[% sep %]barcode[% sep %]"itype" --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref @@ -153,6 +153,12 @@ Circulation: Checkout Policy: - + - pref: AutoReturnCheckedOutItems + choices: + yes: Don't + no: Do + - require librarians to manually confirm a checkout where the item is already checked out to another patron. + - - pref: AllowTooManyOverride choices: yes: Allow --- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt @@ -177,6 +177,10 @@ $(document).ready(function() {
[% END %] +[% IF alert.RETURNED_FROM_ANOTHER %] +