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

(-)a/admin/smart-rules.pl (-14 / +13 lines)
Lines 256-262 elsif ($op eq 'add') { Link Here
256
    my $itemtype  = $input->param('itemtype');     # item type
256
    my $itemtype  = $input->param('itemtype');     # item type
257
    my $fine = $input->param('fine');
257
    my $fine = $input->param('fine');
258
    my $finedays     = $input->param('finedays');
258
    my $finedays     = $input->param('finedays');
259
    my $maxsuspensiondays = $input->param('maxsuspensiondays') || '';
259
    my $maxsuspensiondays = $input->param('maxsuspensiondays') || q{};
260
    my $suspension_chargeperiod = $input->param('suspension_chargeperiod') || 1;
260
    my $suspension_chargeperiod = $input->param('suspension_chargeperiod') || 1;
261
    my $firstremind  = $input->param('firstremind');
261
    my $firstremind  = $input->param('firstremind');
262
    my $chargeperiod = $input->param('chargeperiod');
262
    my $chargeperiod = $input->param('chargeperiod');
Lines 264-277 elsif ($op eq 'add') { Link Here
264
    my $maxissueqty = strip_non_numeric( scalar $input->param('maxissueqty') );
264
    my $maxissueqty = strip_non_numeric( scalar $input->param('maxissueqty') );
265
    my $maxonsiteissueqty = strip_non_numeric( scalar $input->param('maxonsiteissueqty') );
265
    my $maxonsiteissueqty = strip_non_numeric( scalar $input->param('maxonsiteissueqty') );
266
    my $renewalsallowed  = $input->param('renewalsallowed');
266
    my $renewalsallowed  = $input->param('renewalsallowed');
267
    my $unseen_renewals_allowed  = strip_non_numeric( scalar $input->param('unseen_renewals_allowed') ) // '';
267
    my $unseen_renewals_allowed  = strip_non_numeric( scalar $input->param('unseen_renewals_allowed') ) // q{};
268
    my $renewalperiod    = $input->param('renewalperiod');
268
    my $renewalperiod    = $input->param('renewalperiod');
269
    my $norenewalbefore  = $input->param('norenewalbefore');
269
    my $norenewalbefore  = $input->param('norenewalbefore');
270
    $norenewalbefore = '' if $norenewalbefore =~ /^\s*$/;
270
    $norenewalbefore = q{} if $norenewalbefore =~ /^\s*$/;
271
    my $auto_renew = $input->param('auto_renew') eq 'yes' ? 1 : 0;
271
    my $auto_renew = $input->param('auto_renew') eq 'yes' ? 1 : 0;
272
    my $no_auto_renewal_after = $input->param('no_auto_renewal_after');
272
    my $no_auto_renewal_after = $input->param('no_auto_renewal_after');
273
    $no_auto_renewal_after = '' if $no_auto_renewal_after =~ /^\s*$/;
273
    $no_auto_renewal_after = q{} if $no_auto_renewal_after =~ /^\s*$/;
274
    my $no_auto_renewal_after_hard_limit = $input->param('no_auto_renewal_after_hard_limit') || '';
274
    my $no_auto_renewal_after_hard_limit = $input->param('no_auto_renewal_after_hard_limit') || q{};
275
    $no_auto_renewal_after_hard_limit = eval { dt_from_string( scalar $no_auto_renewal_after_hard_limit ) } if ( $no_auto_renewal_after_hard_limit );
275
    $no_auto_renewal_after_hard_limit = eval { dt_from_string( scalar $no_auto_renewal_after_hard_limit ) } if ( $no_auto_renewal_after_hard_limit );
276
    $no_auto_renewal_after_hard_limit = output_pref( { dt => $no_auto_renewal_after_hard_limit, dateonly => 1, dateformat => 'iso' } ) if ( $no_auto_renewal_after_hard_limit );
276
    $no_auto_renewal_after_hard_limit = output_pref( { dt => $no_auto_renewal_after_hard_limit, dateonly => 1, dateformat => 'iso' } ) if ( $no_auto_renewal_after_hard_limit );
277
    my $reservesallowed  = strip_non_numeric( scalar $input->param('reservesallowed') );
277
    my $reservesallowed  = strip_non_numeric( scalar $input->param('reservesallowed') );
Lines 281-297 elsif ($op eq 'add') { Link Here
281
    my $issuelength  = $input->param('issuelength') || 0;
281
    my $issuelength  = $input->param('issuelength') || 0;
282
    my $daysmode = $input->param('daysmode');
282
    my $daysmode = $input->param('daysmode');
283
    my $lengthunit  = $input->param('lengthunit');
283
    my $lengthunit  = $input->param('lengthunit');
284
    my $hardduedate = $input->param('hardduedate') || '';
284
    my $hardduedate = $input->param('hardduedate') || q{};
285
    $hardduedate = eval { dt_from_string( scalar $hardduedate ) } if ( $hardduedate );
285
    $hardduedate = eval { dt_from_string( scalar $hardduedate ) } if ( $hardduedate );
286
    $hardduedate = output_pref( { dt => $hardduedate, dateonly => 1, dateformat => 'iso' } ) if ( $hardduedate );
286
    $hardduedate = output_pref( { dt => $hardduedate, dateonly => 1, dateformat => 'iso' } ) if ( $hardduedate );
287
    my $hardduedatecompare = $input->param('hardduedatecompare');
287
    my $hardduedatecompare = $input->param('hardduedatecompare');
288
    my $rentaldiscount = $input->param('rentaldiscount') || 0;
288
    my $rentaldiscount = $input->param('rentaldiscount') || 0;
289
    my $opacitemholds = $input->param('opacitemholds') || 0;
289
    my $opacitemholds = $input->param('opacitemholds') || 0;
290
    my $article_requests = $input->param('article_requests') || 'no';
290
    my $article_requests = $input->param('article_requests') || 'no';
291
    my $overduefinescap = $input->param('overduefinescap') || '';
291
    my $overduefinescap = $input->param('overduefinescap') || q{};
292
    my $cap_fine_to_replacement_price = ($input->param('cap_fine_to_replacement_price') || '') eq 'on';
292
    my $cap_fine_to_replacement_price = ($input->param('cap_fine_to_replacement_price') || q{}) eq 'on';
293
    my $note = $input->param('note');
293
    my $note = $input->param('note');
294
    my $decreaseloanholds = $input->param('decreaseloanholds') || '';
294
    my $decreaseloanholds = $input->param('decreaseloanholds') || q{};
295
    my $recalls_allowed = $input->param('recalls_allowed');
295
    my $recalls_allowed = $input->param('recalls_allowed');
296
    my $recalls_per_record = $input->param('recalls_per_record');
296
    my $recalls_per_record = $input->param('recalls_per_record');
297
    my $on_shelf_recalls = $input->param('on_shelf_recalls');
297
    my $on_shelf_recalls = $input->param('on_shelf_recalls');
Lines 481-487 elsif ( $op eq "add-open-article-requests-limit" ) { Link Here
481
481
482
    Koha::Exception->throw("No value passed for article request limit")
482
    Koha::Exception->throw("No value passed for article request limit")
483
      if not defined $open_article_requests_limit # There is a JS check for that
483
      if not defined $open_article_requests_limit # There is a JS check for that
484
      || $open_article_requests_limit eq '';
484
      || $open_article_requests_limit eq q{};
485
485
486
    if ( $branch eq "*" ) {
486
    if ( $branch eq "*" ) {
487
        if ( $categorycode eq "*" ) {
487
        if ( $categorycode eq "*" ) {
Lines 555-561 elsif ( $op eq "set-article-request-fee" ) { Link Here
555
555
556
    Koha::Exception->throw("No value passed for article request fee")
556
    Koha::Exception->throw("No value passed for article request fee")
557
      if not defined $fee # There is a JS check for that
557
      if not defined $fee # There is a JS check for that
558
      || $fee eq '';
558
      || $fee eq q{};
559
559
560
    Koha::CirculationRules->set_rules(
560
    Koha::CirculationRules->set_rules(
561
        {   categorycode => ( $category  eq '*' ) ? undef : $category,
561
        {   categorycode => ( $category  eq '*' ) ? undef : $category,
Lines 680-686 my $definedbranch = $all_rules->count ? 1 : 0; Link Here
680
my $rules = {};
680
my $rules = {};
681
while ( my $r = $all_rules->next ) {
681
while ( my $r = $all_rules->next ) {
682
    $r = $r->unblessed;
682
    $r = $r->unblessed;
683
    $rules->{ $r->{categorycode} // '' }->{ $r->{itemtype} // '' }->{ $r->{rule_name} } = $r->{rule_value};
683
    $rules->{ $r->{categorycode} // q{} }->{ $r->{itemtype} // q{} }->{ $r->{rule_name} } = $r->{rule_value};
684
}
684
}
685
685
686
$template->param(show_branch_cat_rule_form => 1);
686
$template->param(show_branch_cat_rule_form => 1);
Lines 730-735 sub by_itemtype { Link Here
730
sub strip_non_numeric {
730
sub strip_non_numeric {
731
    my $string = shift;
731
    my $string = shift;
732
    $string =~ s/\s//g;
732
    $string =~ s/\s//g;
733
    $string = '' if $string !~ /^\d+/;
733
    $string = q{} if $string !~ /^\d+/;
734
    return $string;
734
    return $string;
735
}
735
}
736
- 

Return to bug 29012