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

(-)a/C4/Labels/Label.pm (+12 lines)
Lines 502-507 sub barcode { Link Here
502
    my %params = @_;
502
    my %params = @_;
503
    $params{'barcode_data'} = _get_label_item($self->{'item_number'}, 1) if !$params{'barcode_data'};
503
    $params{'barcode_data'} = _get_label_item($self->{'item_number'}, 1) if !$params{'barcode_data'};
504
    $params{'barcode_type'} = $self->{'barcode_type'} if !$params{'barcode_type'};
504
    $params{'barcode_type'} = $self->{'barcode_type'} if !$params{'barcode_type'};
505
506
    my $enableBarcodePadding = C4::Context->preference("BarcodePaddingEnable");
507
    my $paddingCharacter = C4::Context->preference("BarcodePaddingCharacter") || 0;
508
    my $paddingLength = C4::Context->preference("BarcodePaddingLength") || 0;
509
510
    if (length($paddingCharacter) > 1) {
511
        $paddingCharacter = substr $paddingCharacter, 0, 1;
512
    }
513
    if ($enableBarcodePadding and length($params{'barcode_data'}) < $paddingLength) {
514
        $params{'barcode_data'} = ($paddingCharacter x ($paddingLength - length($params{'barcode_data'}))) . $params{'barcode_data'};
515
    }
516
505
    my $x_scale_factor = 1;
517
    my $x_scale_factor = 1;
506
    my $num_of_bars = length($params{'barcode_data'});
518
    my $num_of_bars = length($params{'barcode_data'});
507
    my $tot_bar_length = 0;
519
    my $tot_bar_length = 0;
(-)a/installer/data/mysql/atomicupdate/Bug19325-BarcodePadding.syspref.sql (+4 lines)
Line 0 Link Here
1
INSERT IGNORE INTO systempreferences (variable, value, explanation, options, type) VALUES 
2
('BarcodePaddingEnable','0','Enables padding the barcode when printing to PDF',NULL,'YesNo'),
3
('BarcodePaddingLength','0','The total length of the padded barcode',NULL,'Integer'),
4
('BarcodePaddingCharacter','0','The character to use when padding. Only string[0] is used.',NULL,'string');
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/tools.pref (-1 / +13 lines)
Lines 38-40 Tools: Link Here
38
            - pref: NumSavedReports
38
            - pref: NumSavedReports
39
              class: integer
39
              class: integer
40
            - reports on the Saved Reports page.
40
            - reports on the Saved Reports page.
41
- 
41
    Labels:
42
         -
43
            - pref: BarcodePaddingEnable
44
              choices:
45
                yes: "Enable"
46
                no: "Disable"
47
            - "padding the length of printed barcodes up to length"
48
            - pref: BarcodePaddingLength
49
              class: integer
50
            - " with the character "
51
            - pref: BarcodePaddingCharacter
52
              class: integer
53
            - " This has no effect if the barcode is longer than length. Length and character default to 0 if fields are empty."

Return to bug 19325