|
Lines 50-55
holds_reminder.pl
Link Here
|
| 50 |
-v verbose |
50 |
-v verbose |
| 51 |
-c --confirm confirm, if not set no email will be sent |
51 |
-c --confirm confirm, if not set no email will be sent |
| 52 |
-days <days> days waiting to deal with |
52 |
-days <days> days waiting to deal with |
|
|
53 |
-t --triggered include only holds <days> days waiting, and not longer |
| 53 |
-lettercode <lettercode> predefined notice to use, default is HOLD_REMINDER |
54 |
-lettercode <lettercode> predefined notice to use, default is HOLD_REMINDER |
| 54 |
-library <branchname> only deal with holds from this library (repeatable : several libraries can be given) |
55 |
-library <branchname> only deal with holds from this library (repeatable : several libraries can be given) |
| 55 |
-holidays use the calendar to not count holidays as waiting days |
56 |
-holidays use the calendar to not count holidays as waiting days |
|
Lines 86-91
Optional parameter, number of days an items has been 'waiting' on hold
Link Here
|
| 86 |
to send a message for. If not included a notice will be sent to all |
87 |
to send a message for. If not included a notice will be sent to all |
| 87 |
patrons with waiting holds. |
88 |
patrons with waiting holds. |
| 88 |
|
89 |
|
|
|
90 |
=item B<-triggered> |
| 91 |
|
| 92 |
Optional parameter, only sned notices for holds exactly <days> waiting. |
| 93 |
If not included a notice will be sent to all patrons with waiting holds |
| 94 |
equal to OR greater than <days>. This option is useful if the cron is |
| 95 |
being run daily to avoid spamming the patrons. |
| 96 |
|
| 89 |
=item B<-lettercode> |
97 |
=item B<-lettercode> |
| 90 |
|
98 |
|
| 91 |
Optional parameter, choose a notice to use. Default is 'HOLD_REMINDER'. |
99 |
Optional parameter, choose a notice to use. Default is 'HOLD_REMINDER'. |
|
Lines 160-165
my $man = 0;
Link Here
|
| 160 |
my $verbose = 0; |
168 |
my $verbose = 0; |
| 161 |
my $confirm = 0; |
169 |
my $confirm = 0; |
| 162 |
my $days ; |
170 |
my $days ; |
|
|
171 |
my $triggered = 0; |
| 163 |
my $lettercode; |
172 |
my $lettercode; |
| 164 |
my @branchcodes; # Branch(es) passed as parameter |
173 |
my @branchcodes; # Branch(es) passed as parameter |
| 165 |
my $use_calendar = 0; |
174 |
my $use_calendar = 0; |
|
Lines 173-178
GetOptions(
Link Here
|
| 173 |
'v' => \$verbose, |
182 |
'v' => \$verbose, |
| 174 |
'c|confirm' => \$confirm, |
183 |
'c|confirm' => \$confirm, |
| 175 |
'days=s' => \$days, |
184 |
'days=s' => \$days, |
|
|
185 |
'triggered' => \$triggered, |
| 176 |
'lettercode=s' => \$lettercode, |
186 |
'lettercode=s' => \$lettercode, |
| 177 |
'library=s' => \@branchcodes, |
187 |
'library=s' => \@branchcodes, |
| 178 |
'date=s' => \$date_input, |
188 |
'date=s' => \$date_input, |
|
Lines 244-251
foreach my $branchcode (@branchcodes) { #BEGIN BRANCH LOOP
Link Here
|
| 244 |
# Find all the holds waiting since this date for the current branch |
254 |
# Find all the holds waiting since this date for the current branch |
| 245 |
my $dtf = Koha::Database->new->schema->storage->datetime_parser; |
255 |
my $dtf = Koha::Database->new->schema->storage->datetime_parser; |
| 246 |
my $waiting_since = $dtf->format_date( $waiting_date ); |
256 |
my $waiting_since = $dtf->format_date( $waiting_date ); |
|
|
257 |
my $comparator = $triggered ? '=' : '<='; |
| 247 |
my $reserves = Koha::Holds->search({ |
258 |
my $reserves = Koha::Holds->search({ |
| 248 |
waitingdate => {'<=' => $waiting_since }, |
259 |
waitingdate => {$comparator => $waiting_since }, |
| 249 |
'me.branchcode' => $branchcode, |
260 |
'me.branchcode' => $branchcode, |
| 250 |
},{ prefetch => 'patron' }); |
261 |
},{ prefetch => 'patron' }); |
| 251 |
|
262 |
|
| 252 |
- |
|
|