From 9db9dc49a2bd688f3c854b54cceaf1f517141f86 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fr=C3=A9d=C3=A9rick?= Date: Thu, 21 Mar 2013 17:51:46 -0400 Subject: [PATCH] Bug 8337 System preferences for longoverdue cron Content-Type: text/plain; charset=utf-8 Patch to follow that adds 3 new system preferences to control the parameters for the longoverdue script. New prefs are DefaultLongOverdueChargeValue, DefaultLongOverdueLostValue and DefaultLongOverdueDays. These preferences are used when you call the longoverdue.pl script without their parameters. Sponsored-By: CCSR Signed-off-by: Leila and Fridos help Signed-off-by: Kyle M Hall Signed-off-by: Marcel de Rooy --- .../en/modules/admin/preferences/circulation.pref | 17 +++++++++++++++++ misc/cronjobs/longoverdue.pl | 17 +++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref index 2190004..9f4c68c 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref @@ -342,6 +342,23 @@ Circulation: confirmation: Ask for confirmation - when checking out to a borrower that has overdues outstanding - + - By default, set the LOST value of an item to + - pref: DefaultLongOverdueLostValue + class: integer + - when the item has been overdue for more than + - pref: DefaultLongOverdueDays + class: integer + - days. + -
WARNING — These preferences will activate the automatic item loss process. Leave these fields empty if you don't want to activate this feature. + - "
Example: [1] [30] Sets an item to the LOST value 1 when it has been overdue for more than 30 days." + -
(Used when the longoverdue.pl script is called without the --lost parameter) + - + - "Charge a lost item to the borrower's account when the LOST value of the item changes to :" + - pref: DefaultLongOverdueChargeValue + class: integer + -
Leave this field empty if you don't want to charge the user for lost items. + -
(Used when the longoverdue.pl script is called without the --charge parameter) + - - On checkin route the returned item to - pref: HomeOrHoldingBranchReturn type: choice diff --git a/misc/cronjobs/longoverdue.pl b/misc/cronjobs/longoverdue.pl index 0f64712..ea7d594 100755 --- a/misc/cronjobs/longoverdue.pl +++ b/misc/cronjobs/longoverdue.pl @@ -108,8 +108,21 @@ ENDUSAGE # FIXME: allow --help or -h # if ( ! defined($lost) ) { - print $usage; - die "ERROR: No --lost (-l) option defined"; + my $longoverdue_value = C4::Context->preference('DefaultLongOverdueLostValue'); + my $longoverdue_days = C4::Context->preference('DefaultLongOverdueDays'); + if(defined($longoverdue_value) and defined($longoverdue_days) and $longoverdue_value ne '' and $longoverdue_days ne '' and $longoverdue_days >= 0) { + $lost->{$longoverdue_days} = $longoverdue_value; + } + else { + print $usage; + die "ERROR: No --lost (-l) option defined"; + } +} +if ( ! defined($charge) ) { + my $charge_value = C4::Context->preference('DefaultLongOverdueChargeValue'); + if(defined($charge_value) and $charge_value ne '') { + $charge = $charge_value; + } } unless ($confirm) { $verbose = 1; # If you're not running it for real, then the whole point is the print output. -- 1.7.7.6