Lines 74-81
if ($op eq 'delete') {
Link Here
|
74 |
Koha::CirculationRules->set_rules( |
74 |
Koha::CirculationRules->set_rules( |
75 |
{ |
75 |
{ |
76 |
categorycode => $categorycode eq '*' ? undef : $categorycode, |
76 |
categorycode => $categorycode eq '*' ? undef : $categorycode, |
77 |
branchcode => $branch eq '*' ? undef : $branch, |
77 |
branchcode => $branch eq '*' ? undef : $branch, |
78 |
itemtype => $itemtype eq '*' ? undef : $itemtype, |
78 |
itemtype => $itemtype eq '*' ? undef : $itemtype, |
79 |
rules => { |
79 |
rules => { |
80 |
maxissueqty => undef, |
80 |
maxissueqty => undef, |
81 |
maxonsiteissueqty => undef, |
81 |
maxonsiteissueqty => undef, |
Lines 251-350
elsif ($op eq 'delete-branch-item') {
Link Here
|
251 |
} |
251 |
} |
252 |
} |
252 |
} |
253 |
# save the values entered |
253 |
# save the values entered |
254 |
elsif ($op eq 'add') { |
254 |
elsif ( $op eq 'add' ) { |
255 |
my $br = $branch; # branch |
255 |
my $br = $branch; # branch |
256 |
my $bor = $input->param('categorycode'); # borrower category |
256 |
my $bor = $input->param('categorycode'); # borrower category |
257 |
my $itemtype = $input->param('itemtype'); # item type |
257 |
my $itemtype = $input->param('itemtype'); # item type |
258 |
my $fine = $input->param('fine'); |
258 |
my $fine = $input->param('fine'); |
259 |
my $finedays = $input->param('finedays'); |
259 |
my $finedays = $input->param('finedays'); |
260 |
my $maxsuspensiondays = $input->param('maxsuspensiondays') || q{}; |
260 |
my $maxsuspensiondays = $input->param('maxsuspensiondays') || q{}; |
261 |
my $suspension_chargeperiod = $input->param('suspension_chargeperiod') || 1; |
261 |
my $suspension_chargeperiod = $input->param('suspension_chargeperiod') || 1; |
262 |
my $firstremind = $input->param('firstremind'); |
262 |
my $firstremind = $input->param('firstremind'); |
263 |
my $chargeperiod = $input->param('chargeperiod'); |
263 |
my $chargeperiod = $input->param('chargeperiod'); |
264 |
my $chargeperiod_charge_at = $input->param('chargeperiod_charge_at'); |
264 |
my $chargeperiod_charge_at = $input->param('chargeperiod_charge_at'); |
265 |
my $maxissueqty = strip_non_numeric( scalar $input->param('maxissueqty') ); |
265 |
my $maxissueqty = strip_non_numeric( scalar $input->param('maxissueqty') ); |
266 |
my $maxonsiteissueqty = strip_non_numeric( scalar $input->param('maxonsiteissueqty') ); |
266 |
my $maxonsiteissueqty = strip_non_numeric( scalar $input->param('maxonsiteissueqty') ); |
267 |
my $renewalsallowed = $input->param('renewalsallowed'); |
267 |
my $renewalsallowed = $input->param('renewalsallowed'); |
268 |
my $unseen_renewals_allowed = defined $input->param('unseen_renewals_allowed') ? strip_non_numeric( scalar $input->param('unseen_renewals_allowed') ) : q{}; |
268 |
my $unseen_renewals_allowed = |
269 |
my $renewalperiod = $input->param('renewalperiod'); |
269 |
defined $input->param('unseen_renewals_allowed') |
270 |
my $norenewalbefore = $input->param('norenewalbefore'); |
270 |
? strip_non_numeric( scalar $input->param('unseen_renewals_allowed') ) |
|
|
271 |
: q{}; |
272 |
my $renewalperiod = $input->param('renewalperiod'); |
273 |
my $norenewalbefore = $input->param('norenewalbefore'); |
271 |
$norenewalbefore = q{} if $norenewalbefore =~ /^\s*$/; |
274 |
$norenewalbefore = q{} if $norenewalbefore =~ /^\s*$/; |
272 |
my $auto_renew = $input->param('auto_renew') eq 'yes' ? 1 : 0; |
275 |
my $auto_renew = $input->param('auto_renew') eq 'yes' ? 1 : 0; |
273 |
my $no_auto_renewal_after = $input->param('no_auto_renewal_after'); |
276 |
my $no_auto_renewal_after = $input->param('no_auto_renewal_after'); |
274 |
$no_auto_renewal_after = q{} if $no_auto_renewal_after =~ /^\s*$/; |
277 |
$no_auto_renewal_after = q{} if $no_auto_renewal_after =~ /^\s*$/; |
275 |
my $no_auto_renewal_after_hard_limit = $input->param('no_auto_renewal_after_hard_limit') || q{}; |
278 |
my $no_auto_renewal_after_hard_limit = $input->param('no_auto_renewal_after_hard_limit') || q{}; |
276 |
my $reservesallowed = strip_non_numeric( scalar $input->param('reservesallowed') ); |
279 |
my $reservesallowed = strip_non_numeric( scalar $input->param('reservesallowed') ); |
277 |
my $holds_per_record = strip_non_numeric( scalar $input->param('holds_per_record') ); |
280 |
my $holds_per_record = strip_non_numeric( scalar $input->param('holds_per_record') ); |
278 |
my $holds_per_day = strip_non_numeric( scalar $input->param('holds_per_day') ); |
281 |
my $holds_per_day = strip_non_numeric( scalar $input->param('holds_per_day') ); |
279 |
my $onshelfholds = $input->param('onshelfholds') || 0; |
282 |
my $onshelfholds = $input->param('onshelfholds') || 0; |
280 |
my $issuelength = $input->param('issuelength') || 0; |
283 |
my $issuelength = $input->param('issuelength') || 0; |
281 |
my $daysmode = $input->param('daysmode'); |
284 |
my $daysmode = $input->param('daysmode'); |
282 |
my $lengthunit = $input->param('lengthunit'); |
285 |
my $lengthunit = $input->param('lengthunit'); |
283 |
my $hardduedate = $input->param('hardduedate') || q{}; |
286 |
my $hardduedate = $input->param('hardduedate') || q{}; |
284 |
my $hardduedatecompare = $input->param('hardduedatecompare'); |
287 |
my $hardduedatecompare = $input->param('hardduedatecompare'); |
285 |
my $rentaldiscount = $input->param('rentaldiscount') || 0; |
288 |
my $rentaldiscount = $input->param('rentaldiscount') || 0; |
286 |
my $opacitemholds = $input->param('opacitemholds') || 0; |
289 |
my $opacitemholds = $input->param('opacitemholds') || 0; |
287 |
my $article_requests = $input->param('article_requests') || 'no'; |
290 |
my $article_requests = $input->param('article_requests') || 'no'; |
288 |
my $overduefinescap = $input->param('overduefinescap') |
291 |
my $overduefinescap = $input->param('overduefinescap') |
289 |
&& ( $input->param('overduefinescap') + 0 ) > 0 ? sprintf( "%.02f", $input->param('overduefinescap') ) : q{}; |
292 |
&& ( $input->param('overduefinescap') + 0 ) > 0 ? sprintf( "%.02f", $input->param('overduefinescap') ) : q{}; |
290 |
my $cap_fine_to_replacement_price = ($input->param('cap_fine_to_replacement_price') || q{}) eq 'on'; |
293 |
my $cap_fine_to_replacement_price = ( $input->param('cap_fine_to_replacement_price') || q{} ) eq 'on'; |
291 |
my $note = $input->param('note'); |
294 |
my $note = $input->param('note'); |
292 |
my $decreaseloanholds = $input->param('decreaseloanholds') || q{}; |
295 |
my $decreaseloanholds = $input->param('decreaseloanholds') || q{}; |
293 |
my $recalls_allowed = $input->param('recalls_allowed'); |
296 |
my $recalls_allowed = $input->param('recalls_allowed'); |
294 |
my $recalls_per_record = $input->param('recalls_per_record'); |
297 |
my $recalls_per_record = $input->param('recalls_per_record'); |
295 |
my $on_shelf_recalls = $input->param('on_shelf_recalls'); |
298 |
my $on_shelf_recalls = $input->param('on_shelf_recalls'); |
296 |
my $recall_due_date_interval = $input->param('recall_due_date_interval'); |
299 |
my $recall_due_date_interval = $input->param('recall_due_date_interval'); |
297 |
my $recall_overdue_fine = $input->param('recall_overdue_fine'); |
300 |
my $recall_overdue_fine = $input->param('recall_overdue_fine'); |
298 |
my $recall_shelf_time = $input->param('recall_shelf_time'); |
301 |
my $recall_shelf_time = $input->param('recall_shelf_time'); |
299 |
my $holds_pickup_period = strip_non_numeric( scalar $input->param('holds_pickup_period') ); |
302 |
my $holds_pickup_period = strip_non_numeric( scalar $input->param('holds_pickup_period') ); |
300 |
|
303 |
|
301 |
my $rules = { |
304 |
my $rules = { |
302 |
maxissueqty => $maxissueqty, |
305 |
maxissueqty => $maxissueqty, |
303 |
maxonsiteissueqty => $maxonsiteissueqty, |
306 |
maxonsiteissueqty => $maxonsiteissueqty, |
304 |
rentaldiscount => $rentaldiscount, |
307 |
rentaldiscount => $rentaldiscount, |
305 |
fine => $fine, |
308 |
fine => $fine, |
306 |
finedays => $finedays, |
309 |
finedays => $finedays, |
307 |
maxsuspensiondays => $maxsuspensiondays, |
310 |
maxsuspensiondays => $maxsuspensiondays, |
308 |
suspension_chargeperiod => $suspension_chargeperiod, |
311 |
suspension_chargeperiod => $suspension_chargeperiod, |
309 |
firstremind => $firstremind, |
312 |
firstremind => $firstremind, |
310 |
chargeperiod => $chargeperiod, |
313 |
chargeperiod => $chargeperiod, |
311 |
chargeperiod_charge_at => $chargeperiod_charge_at, |
314 |
chargeperiod_charge_at => $chargeperiod_charge_at, |
312 |
issuelength => $issuelength, |
315 |
issuelength => $issuelength, |
313 |
daysmode => $daysmode, |
316 |
daysmode => $daysmode, |
314 |
lengthunit => $lengthunit, |
317 |
lengthunit => $lengthunit, |
315 |
hardduedate => $hardduedate, |
318 |
hardduedate => $hardduedate, |
316 |
hardduedatecompare => $hardduedatecompare, |
319 |
hardduedatecompare => $hardduedatecompare, |
317 |
renewalsallowed => $renewalsallowed, |
320 |
renewalsallowed => $renewalsallowed, |
318 |
unseen_renewals_allowed => $unseen_renewals_allowed, |
321 |
unseen_renewals_allowed => $unseen_renewals_allowed, |
319 |
renewalperiod => $renewalperiod, |
322 |
renewalperiod => $renewalperiod, |
320 |
norenewalbefore => $norenewalbefore, |
323 |
norenewalbefore => $norenewalbefore, |
321 |
auto_renew => $auto_renew, |
324 |
auto_renew => $auto_renew, |
322 |
no_auto_renewal_after => $no_auto_renewal_after, |
325 |
no_auto_renewal_after => $no_auto_renewal_after, |
323 |
no_auto_renewal_after_hard_limit => $no_auto_renewal_after_hard_limit, |
326 |
no_auto_renewal_after_hard_limit => $no_auto_renewal_after_hard_limit, |
324 |
reservesallowed => $reservesallowed, |
327 |
reservesallowed => $reservesallowed, |
325 |
holds_per_record => $holds_per_record, |
328 |
holds_per_record => $holds_per_record, |
326 |
holds_per_day => $holds_per_day, |
329 |
holds_per_day => $holds_per_day, |
327 |
onshelfholds => $onshelfholds, |
330 |
onshelfholds => $onshelfholds, |
328 |
opacitemholds => $opacitemholds, |
331 |
opacitemholds => $opacitemholds, |
329 |
overduefinescap => $overduefinescap, |
332 |
overduefinescap => $overduefinescap, |
330 |
cap_fine_to_replacement_price => $cap_fine_to_replacement_price, |
333 |
cap_fine_to_replacement_price => $cap_fine_to_replacement_price, |
331 |
article_requests => $article_requests, |
334 |
article_requests => $article_requests, |
332 |
note => $note, |
335 |
note => $note, |
333 |
decreaseloanholds => $decreaseloanholds, |
336 |
decreaseloanholds => $decreaseloanholds, |
334 |
recalls_allowed => $recalls_allowed, |
337 |
recalls_allowed => $recalls_allowed, |
335 |
recalls_per_record => $recalls_per_record, |
338 |
recalls_per_record => $recalls_per_record, |
336 |
on_shelf_recalls => $on_shelf_recalls, |
339 |
on_shelf_recalls => $on_shelf_recalls, |
337 |
recall_due_date_interval => $recall_due_date_interval, |
340 |
recall_due_date_interval => $recall_due_date_interval, |
338 |
recall_overdue_fine => $recall_overdue_fine, |
341 |
recall_overdue_fine => $recall_overdue_fine, |
339 |
recall_shelf_time => $recall_shelf_time, |
342 |
recall_shelf_time => $recall_shelf_time, |
340 |
holds_pickup_period => $holds_pickup_period, |
343 |
holds_pickup_period => $holds_pickup_period, |
341 |
}; |
344 |
}; |
342 |
|
345 |
|
343 |
Koha::CirculationRules->set_rules( |
346 |
Koha::CirculationRules->set_rules( |
344 |
{ |
347 |
{ |
345 |
categorycode => $bor eq '*' ? undef : $bor, |
348 |
categorycode => $bor eq '*' ? undef : $bor, |
346 |
itemtype => $itemtype eq '*' ? undef : $itemtype, |
349 |
itemtype => $itemtype eq '*' ? undef : $itemtype, |
347 |
branchcode => $br eq '*' ? undef : $br, |
350 |
branchcode => $br eq '*' ? undef : $br, |
348 |
rules => $rules, |
351 |
rules => $rules, |
349 |
} |
352 |
} |
350 |
); |
353 |
); |