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

(-)a/C4/Installer.pm (-4 / +2 lines)
Lines 460-469 sub set_marcflavour_syspref { Link Here
460
    # marc_cleaned finds the marcflavour, without the variant.
460
    # marc_cleaned finds the marcflavour, without the variant.
461
    my $marc_cleaned = 'MARC21';
461
    my $marc_cleaned = 'MARC21';
462
    $marc_cleaned = 'UNIMARC' if $marcflavour =~ /unimarc/i;
462
    $marc_cleaned = 'UNIMARC' if $marcflavour =~ /unimarc/i;
463
    my $request =
463
    my $request = $self->{'dbh'}
464
        $self->{'dbh'}->prepare(
464
        ->prepare("INSERT IGNORE INTO `systempreferences` (variable, value) VALUES('marcflavour', '$marc_cleaned')");
465
        "INSERT IGNORE INTO `systempreferences` (variable,value,explanation,options,type) VALUES('marcflavour','$marc_cleaned','Define global MARC flavor (MARC21 or UNIMARC) used for character encoding','MARC21|UNIMARC','Choice');"
466
        );
467
    $request->execute;
465
    $request->execute;
468
}
466
}
469
467
(-)a/Koha/Config/SysPrefs.pm (-4 / +156 lines)
Lines 18-28 package Koha::Config::SysPrefs; Link Here
18
# along with Koha; if not, see <https://www.gnu.org/licenses>.
18
# along with Koha; if not, see <https://www.gnu.org/licenses>.
19
19
20
use Modern::Perl;
20
use Modern::Perl;
21
21
use YAML::XS qw(LoadFile);
22
use Koha::Database;
23
22
24
use Koha::Config::SysPref;
23
use Koha::Config::SysPref;
25
24
25
use Koha::Config;
26
27
use C4::Templates qw(themelanguage);
28
26
use base qw(Koha::Objects);
29
use base qw(Koha::Objects);
27
30
28
=head1 NAME
31
=head1 NAME
Lines 31-41 Koha::Config::SysPrefs - Koha System Preference object set class Link Here
31
34
32
=head1 API
35
=head1 API
33
36
34
=head2 Class Methods
37
=head2 Instance methods
38
39
=head3 get_pref_files
40
41
my $files = Koha::config::SysPrefs->get_pref_files();
42
43
Return a hashref containing the list of the yml/pref files in admin/preferences
44
45
=cut
46
47
sub get_pref_files {
48
    my ( $self, $lang ) = @_;
49
50
    my $htdocs = Koha::Config->get_instance->get('intrahtdocs');
51
    my ($theme) = C4::Templates::themelanguage( $htdocs, 'admin/preferences/admin.pref', 'intranet', undef, $lang );
52
53
    my $pref_files = {};
54
    foreach my $file ( glob("$htdocs/$theme/$lang/modules/admin/preferences/*.pref") ) {
55
        my ($tab) = ( $file =~ /([a-z0-9_-]+)\.pref$/ );
56
57
        # There is a local_use.pref file but it should not be needed
58
        next if $tab eq 'local_use';
59
        $pref_files->{$tab} = $file;
60
    }
61
62
    return $pref_files;
63
}
64
65
=head3 get_all_from_yml
66
67
my $all_sysprefs = Koha::Config::SysPrefs->get_all_from_yml;
68
69
Return the system preferences information contained in the yml/pref files
70
The result is cached!
71
72
eg. for AcqCreateItem
73
{
74
    category_name   "Policy",
75
    choices         {
76
        cataloguing   "cataloging the record.",
77
        ordering      "placing an order.",
78
        receiving     "receiving an order."
79
    },
80
    chunks          [
81
        [0] "Create an item when",
82
        [1] {
83
                choices   var{choices},
84
                pref      "AcqCreateItem"
85
            },
86
        [2] "This is only the default behavior, and can be changed per-basket."
87
    ],
88
    default         undef,
89
    description     [
90
        [0] "Create an item when",
91
        [1] "This is only the default behavior, and can be changed per-basket."
92
    ],
93
    name            "AcqCreateItem",
94
    tab_id          "acquisitions",
95
    tab_name        "Acquisitions",
96
    type            "select"
97
}
98
99
=cut
100
101
sub get_all_from_yml {
102
    my ( $self, $lang ) = @_;
103
104
    $lang //= "en";
105
106
    my $cache     = Koha::Caches->get_instance("sysprefs");
107
    my $cache_key = "all:${lang}";
108
    my $all_prefs = $cache->get_from_cache($cache_key);
109
110
    unless ($all_prefs) {
111
112
        my $pref_files = Koha::Config::SysPrefs->new->get_pref_files($lang);
113
114
        $all_prefs = {};
115
116
        while ( my ( $tab, $filepath ) = each %$pref_files ) {
117
            my $yml = LoadFile($filepath);
118
119
            if ( scalar keys %$yml != 1 ) {
120
121
                # FIXME Move this to an xt test
122
                die "malformed pref file ($filepath), only one top level key expected";
123
            }
124
125
            for my $tab_name ( sort keys %$yml ) {
126
                for my $category_name ( sort keys %{ $yml->{$tab_name} } ) {
127
                    for my $pref_entry ( @{ $yml->{$tab_name}->{$category_name} } ) {
128
                        my $pref = {
129
                            tab_id        => $tab,
130
                            tab_name      => $tab_name,
131
                            category_name => $category_name,
132
                        };
133
                        for my $entry (@$pref_entry) {
134
                            push @{ $pref->{chunks} }, $entry;
135
                            if ( ref $entry ) {
136
137
                                # get class if type is not defined
138
                                # e.g. for OPACHoldsIfAvailableAtPickupExceptions
139
                                my $type = $entry->{type} || $entry->{class};
140
                                if ( exists $entry->{choices} ) {
141
                                    $type = "select";
142
                                }
143
                                $type ||= "input";
144
                                if ( $pref->{name} ) {
145
                                    push @{ $pref->{grouped_prefs} }, {
146
                                        name    => $entry->{pref},
147
                                        choices => $entry->{choices},
148
                                        default => $entry->{default},
149
                                        type    => $type,
150
                                    };
151
                                    push @{ $pref->{description} }, $entry->{pref};
152
                                } else {
153
                                    $pref->{name}    = $entry->{pref};
154
                                    $pref->{choices} = $entry->{choices};
155
                                    $pref->{default} = $entry->{default};
156
                                    $pref->{type}    = $type;
157
                                }
158
                            } else {
159
                                unless ( defined $entry ) {
160
                                    die sprintf "Invalid description for pref %s", $pref->{name};
161
                                }
162
                                push @{ $pref->{description} }, $entry;
163
                            }
164
                        }
165
                        unless ( $pref->{name} ) {
166
167
                            # At least one "NOTE:" is expected here
168
                            next;
169
                        }
170
                        $all_prefs->{ $pref->{name} } = $pref;
171
                        if ( $pref->{grouped_prefs} ) {
172
                            for my $grouped_pref ( @{ $pref->{grouped_prefs} } ) {
173
                                $all_prefs->{ $grouped_pref->{name} } = { %$pref, %$grouped_pref };
174
                            }
175
                        }
176
                    }
177
                }
178
            }
179
        }
180
181
        $cache->set_in_cache( $cache_key, $all_prefs );
182
    }
183
    return $all_prefs;
184
}
185
186
=head2 Class methods
35
187
36
=cut
188
=cut
37
189
38
=head3 type
190
=head3 _type
39
191
40
=cut
192
=cut
41
193
(-)a/Koha/Devel/Sysprefs.pm (+108 lines)
Line 0 Link Here
1
package Koha::Devel::Sysprefs;
2
3
use Modern::Perl;
4
use File::Slurp qw(read_file write_file);
5
6
use C4::Context;
7
8
=head1 NAME
9
10
Koha::Devel::Sysprefs
11
12
=head1 DESCRIPTION
13
14
Handle system preferences operations for developers.
15
16
=cut
17
18
=head1 API
19
20
=cut
21
22
=head2 new
23
24
my $syspref_handler = Koha::Devel::Sysprefs->new();
25
26
Constructor
27
28
=cut
29
30
sub new {
31
    my ( $class, $args ) = @_;
32
    $args ||= {};
33
34
    unless ( $args->{filepath} ) {
35
        $args->{filepath} = sprintf "%s/installer/data/mysql/mandatory/sysprefs.sql",
36
            C4::Context->config('intranetdir');
37
    }
38
    my $self = bless $args, $class;
39
    return $self;
40
}
41
42
=head2 extract_syspref_from_line
43
44
my $pref = $syspref_handler->extract_syspref_from_line($line);
45
46
Parse a line from sysprefs.sql and return a hashref containing the different syspref's values
47
48
=cut
49
50
sub extract_syspref_from_line {
51
    my ( $self, $line ) = @_;
52
53
    if (
54
        $line    =~ /^INSERT INTO /    # first line
55
        || $line =~ /^;$/              # last line
56
        || $line =~ /^--/              # Comment line
57
        )
58
    {
59
        return;
60
    }
61
62
    if (
63
        $line =~ m/
64
            '(?<variable>[^'\\]*(?:\\.[^'\\]*)*)',\s*
65
            '(?<value>[^'\\]*(?:\\.[^'\\]*)*)'
66
        /xms
67
        )
68
    {
69
        my $variable = $+{variable};
70
        my $value    = $+{value};
71
72
        return {
73
            variable => $variable,
74
            value    => $value,
75
        };
76
    } else {
77
        warn "Invalid line: $line";
78
    }
79
    return {};
80
}
81
82
=head2 get_sysprefs_from_file
83
84
my @sysprefs = $syspref_handler->get_sysprefs_from_file();
85
86
Return an array of sysprefs from the SQL file used to populate the system preferences DB table.
87
88
=cut
89
90
sub get_sysprefs_from_file {
91
    my ($self) = @_;
92
    my @sysprefs;
93
    my @lines = read_file( $self->{filepath} ) or die "Can't open $self->{filepath}: $!";
94
    for my $line (@lines) {
95
        chomp $line;
96
97
        # FIXME Explode if already exists?
98
        my $syspref = $self->extract_syspref_from_line($line);
99
        if ( $syspref && exists $syspref->{variable} ) {
100
            push @sysprefs, $syspref;
101
        } elsif ( defined $syspref ) {
102
            die "$line does not match";
103
        }
104
    }
105
    return @sysprefs;
106
}
107
108
1;
(-)a/installer/data/mysql/atomicupdate/bug_41834.pl (+71 lines)
Line 0 Link Here
1
use Modern::Perl;
2
use Koha::Installer::Output qw(say_warning say_success say_info);
3
use File::Slurp             qw(read_file);
4
5
return {
6
    bug_number  => "41834",
7
    description => "NULL systempreferences's options, explanation and type",
8
    up          => sub {
9
        my ($args) = @_;
10
        my ( $dbh, $out ) = @$args{qw(dbh out)};
11
12
        # First fix some discrepancies
13
14
        # from updatedatabase.pl 20.12.00.009
15
        # UseICUStyleQUotes vs UseICUStyleQuotes
16
        $dbh->do(
17
            q{
18
                UPDATE systempreferences
19
                SET variable="UseICUStyleQuotes"
20
                WHERE BINARY variable="UseICUStyleQUotes"
21
            }
22
        );
23
24
        # from db_revs/211200012.pl
25
        # Syspref was not deleted if no value set
26
        $dbh->do(
27
            q{
28
            DELETE FROM systempreferences WHERE variable='OpacMoreSearches'
29
        }
30
        );
31
32
        # from db_revs/211200020.pl
33
        # Syspref was not deleted if no value set
34
        $dbh->do(
35
            q{
36
            DELETE FROM systempreferences WHERE variable='OPACMySummaryNote'
37
        }
38
        );
39
40
        # Then remove NULL the 3 columns for sysprefs listed in sysprefs.sql
41
        my $sysprefs_filepath = sprintf "%s/installer/data/mysql/mandatory/sysprefs.sql",
42
            C4::Context->config('intranetdir');
43
        my @lines = read_file($sysprefs_filepath) or die "Can't open $sysprefs_filepath: $!";
44
        my @sysprefs;
45
        for my $line (@lines) {
46
            chomp $line;
47
            next if $line =~ /^INSERT INTO /;    # first line
48
            next if $line =~ /^;$/;              # last line
49
            next if $line =~ /^--/;              # Comment line
50
            if (
51
                $line =~ m/
52
                '(?<variable>[^'\\]*(?:\\.[^'\\]*)*)',\s*
53
            /xms
54
                )
55
            {
56
                push @sysprefs, $+{variable};
57
            } else {
58
                die "$line does not match";
59
            }
60
        }
61
62
        my $updated = $dbh->do(
63
            q{
64
            UPDATE systempreferences
65
            SET options=NULL, explanation=NULL, type=NULL
66
            WHERE variable IN (} . join( q{,}, map { q{?} } @sysprefs ) . q{)}, undef, @sysprefs
67
        );
68
69
        say $out sprintf "Updated %s system preferences", $updated;
70
    },
71
};
(-)a/installer/data/mysql/mandatory/sysprefs.sql (-901 / +901 lines)
Lines 1-902 Link Here
1
INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` ) VALUES
1
INSERT INTO systempreferences ( `variable`, `value` ) VALUES
2
('1PageOrderPDFText', 'Order number must appear on all related correspondence, shipping papers and invoices. Notify us immediately if \n you are unable to supply item(s).', NULL, 'Text to be used above the order table in the 1-page order PDF file', 'textarea'),
2
('1PageOrderPDFText', 'Order number must appear on all related correspondence, shipping papers and invoices. Notify us immediately if \n you are unable to supply item(s).'),
3
('AccessControlAllowOrigin', '', NULL, 'Set the Access-Control-Allow-Origin header to the specified value', 'Free'),
3
('AccessControlAllowOrigin', ''),
4
('AccountAutoReconcile','0',NULL,'If enabled, patron balances will get reconciled automatically on each transaction.','YesNo'),
4
('AccountAutoReconcile','0'),
5
('AcqCreateItem','ordering','ordering|receiving|cataloguing','Define when the item is created : when ordering, when receiving, or in cataloguing module','Choice'),
5
('AcqCreateItem','ordering'),
6
('AcqEnableFiles','0',NULL,'If enabled, allows librarians to upload and attach arbitrary files to invoice records.','YesNo'),
6
('AcqEnableFiles','0'),
7
('AcqItemSetSubfieldsWhenReceiptIsCancelled','', NULL,'Upon cancelling a receipt, update the items subfields if they were created when placing an order (e.g. o=5|a="bar foo")', 'Free'),
7
('AcqItemSetSubfieldsWhenReceiptIsCancelled',''),
8
('AcqItemSetSubfieldsWhenReceived','',NULL,'Upon receiving items, update their subfields if they were created when placing an order (e.g. o=5|a="foo bar")','Free'),
8
('AcqItemSetSubfieldsWhenReceived',''),
9
('AcquisitionDetails', '1', NULL, 'Hide/Show acquisition details on the biblio detail page.', 'YesNo'),
9
('AcquisitionDetails', '1'),
10
('AcquisitionLog','0',NULL,'If ON, log acquisitions activity','YesNo'),
10
('AcquisitionLog','0'),
11
('AcquisitionsDefaultEmailAddress', '', NULL, 'Default email address that acquisition notices are sent from', 'Free'),
11
('AcquisitionsDefaultEmailAddress', ''),
12
('AcquisitionsDefaultReplyTo', '', NULL, 'Default email address used as reply-to for notices sent by the acquisitions module.', 'Free'),
12
('AcquisitionsDefaultReplyTo', ''),
13
('AcqViewBaskets','user','user|branch|all','Define which baskets a user is allowed to view: their own only, any within their branch, or all','Choice'),
13
('AcqViewBaskets','user'),
14
('AcqWarnOnDuplicateInvoice','0',NULL,'Warn librarians when they try to create a duplicate invoice','YesNo'),
14
('AcqWarnOnDuplicateInvoice','0'),
15
('ActionLogsTraceDepth', '0', NULL, 'Sets the maximum depth of the action logs stack trace', 'Integer'),
15
('ActionLogsTraceDepth', '0'),
16
('AdditionalContentLog','0',NULL,'If ON, log OPAC news changes','YesNo'),
16
('AdditionalContentLog','0'),
17
('AdditionalContentsEditor','tinymce','tinymce|codemirror','Choose tool for editing News.', 'Choice'),
17
('AdditionalContentsEditor','tinymce'),
18
('AdditionalFieldsInZ3950ResultAuthSearch', '', NULL, 'Determines which MARC field/subfields are displayed in -Additional field- column in the result of an authority Z39.50 search', 'Free'),
18
('AdditionalFieldsInZ3950ResultAuthSearch', ''),
19
('AdditionalFieldsInZ3950ResultSearch', '', NULL, 'Determines which MARC field/subfields are displayed in -Additional field- column in the result of a search Z3950', 'Free'),
19
('AdditionalFieldsInZ3950ResultSearch', ''),
20
('AddressForFailedOverdueNotices', '', NULL, 'Destination email for failed overdue notices. If left empty then it will fallback to the first defined address in the following list: Library ReplyTo, Library Email, ReplytoDefault and KohaAdminEmailAddress', 'Free'),
20
('AddressForFailedOverdueNotices', ''),
21
('AddressFormat','us','us|de|fr','Choose format to display postal addresses', 'Choice'),
21
('AddressFormat','us'),
22
('advancedMARCeditor','0',NULL,'If ON, the MARC editor won\'t display field/subfield descriptions','YesNo'),
22
('advancedMARCeditor','0'),
23
('AdvancedSearchLanguages','',NULL,'ISO 639-2 codes of languages you wish to see appear as an Advanced search option. Example: eng|fre|ita','Textarea'),
23
('AdvancedSearchLanguages',''),
24
('AdvancedSearchTypes','itemtypes','itemtypes|ccode','Select which set of fields comprise the Type limit in the advanced search','Choice'),
24
('AdvancedSearchTypes','itemtypes'),
25
('AgeRestrictionMarker','',NULL,'Markers for age restriction indication, e.g. FSK|PEGI|Age|','Free'),
25
('AgeRestrictionMarker',''),
26
('AgeRestrictionOverride','0',NULL,'Allow staff to check out an item with age restriction.','YesNo'),
26
('AgeRestrictionOverride','0'),
27
('AggressiveMatchOnISBN','0', NULL,'If enabled, attempt to match aggressively by trying all variations of the ISBNs in the imported record as a phrase in the ISBN fields of already cataloged records when matching on ISBN with the record import tool','YesNo'),
27
('AggressiveMatchOnISBN','0'),
28
('AggressiveMatchOnISSN','0', NULL,'If enabled, attempt to match aggressively by trying all variations of the ISSNs in the imported record as a phrase in the ISSN fields of already cataloged records when matching on ISSN with the record import tool','YesNo'),
28
('AggressiveMatchOnISSN','0'),
29
('AllFinesNeedOverride','1',NULL,'If on, staff will be asked to override every fine, even if it is below noissuescharge.','YesNo'),
29
('AllFinesNeedOverride','1'),
30
('AllowAllMessageDeletion','0',NULL,'Allow any Library to delete any message','YesNo'),
30
('AllowAllMessageDeletion','0'),
31
('AllowCheckoutNotes', '0', NULL, 'Allow patrons to submit notes about checked out items.','YesNo'),
31
('AllowCheckoutNotes', '0'),
32
('AllowFineOverride','0',NULL,'If on, staff will be able to issue books to patrons with fines greater than noissuescharge.','YesNo'),
32
('AllowFineOverride','0'),
33
('AllowHoldDateInFuture','0',NULL,'If set a date field is displayed on the Hold screen of the Staff Interface, allowing the hold date to be set in the future.','YesNo'),
33
('AllowHoldDateInFuture','0'),
34
('AllowHoldItemTypeSelection','0',NULL,'If enabled, patrons and staff will be able to select the itemtype when placing a hold','YesNo'),
34
('AllowHoldItemTypeSelection','0'),
35
('AllowHoldPolicyOverride','0',NULL,'Allow staff to override hold policies when placing holds','YesNo'),
35
('AllowHoldPolicyOverride','0'),
36
('AllowHoldsOnDamagedItems','1',NULL,'Allow hold requests to be placed on damaged items','YesNo'),
36
('AllowHoldsOnDamagedItems','1'),
37
('AllowHoldsOnPatronsPossessions','1',NULL,'Allow holds on records that patron have items of it','YesNo'),
37
('AllowHoldsOnPatronsPossessions','1'),
38
('AllowItemsOnHoldCheckoutSCO','0',NULL,'Do not generate RESERVE_WAITING and RESERVED warning in the SCO module when checking out items reserved to someone else. This allows self checkouts for those items.','YesNo'),
38
('AllowItemsOnHoldCheckoutSCO','0'),
39
('AllowItemsOnHoldCheckoutSIP','0',NULL,'Do not generate RESERVED warning when checking out items reserved to someone else via SIP. This allows self checkouts for those items.','YesNo'),
39
('AllowItemsOnHoldCheckoutSIP','0'),
40
('AllowItemsOnLoanCheckoutSIP','0',NULL,'Do not generate ISSUED_TO_ANOTHER warning when checking out items already checked out to someone else via SIP. This allows self checkouts for those items.','YesNo'),
40
('AllowItemsOnLoanCheckoutSIP','0'),
41
('AllowMultipleCovers','0',NULL,'Allow multiple cover images to be attached to each bibliographic record.','YesNo'),
41
('AllowMultipleCovers','0'),
42
('AllowMultipleIssuesOnABiblio','1',NULL,'Allow/Don\'t allow patrons to check out multiple items from one biblio','YesNo'),
42
('AllowMultipleIssuesOnABiblio','1'),
43
('AllowNotForLoanOverride','0',NULL,'If ON, Koha will allow the librarian to loan a not for loan item.','YesNo'),
43
('AllowNotForLoanOverride','0'),
44
('AllowPatronToControlAutorenewal','0',NULL,'If enabled, patrons will have a field in their account to choose whether their checkouts are auto renewed or not','YesNo'),
44
('AllowPatronToControlAutorenewal','0'),
45
('AllowPatronToSetCheckoutsVisibilityForGuarantor', '0', NULL, 'If enabled, the patron can set checkouts to be visible to their guarantor', 'YesNo'),
45
('AllowPatronToSetCheckoutsVisibilityForGuarantor', '0'),
46
('AllowPatronToSetFinesVisibilityForGuarantor', '0', NULL, 'If enabled, the patron can set fines to be visible to their guarantor', 'YesNo'),
46
('AllowPatronToSetFinesVisibilityForGuarantor', '0'),
47
('AllowPKIAuth','None','None|Common Name|emailAddress','Use the field from a client-side SSL certificate to look a user in the Koha database','Choice'),
47
('AllowPKIAuth','None'),
48
('AllowRenewalIfOtherItemsAvailable','0',NULL,'If enabled, allow a patron to renew an item with unfilled holds if other available items can fill that hold.','YesNo'),
48
('AllowRenewalIfOtherItemsAvailable','0'),
49
('AllowRenewalLimitOverride','0',NULL,'if ON, allows renewal limits to be overridden on the circulation screen','YesNo'),
49
('AllowRenewalLimitOverride','0'),
50
('AllowRenewalOnHoldOverride','0',NULL,'If ON, allow items on hold to be renewed with a specified due date','YesNo'),
50
('AllowRenewalOnHoldOverride','0'),
51
('AllowReturnToBranch','anywhere','anywhere|homebranch|holdingbranch|homeorholdingbranch','Where an item may be returned','Choice'),
51
('AllowReturnToBranch','anywhere'),
52
('AllowSetAutomaticRenewal','1',NULL,'If ON, allows staff to flag items for automatic renewal on the check out page','YesNo'),
52
('AllowSetAutomaticRenewal','1'),
53
('AllowStaffToSetCheckoutsVisibilityForGuarantor','0',NULL,'If enabled, library staff can set a patron\'s checkouts to be visible to linked patrons from the opac.','YesNo'),
53
('AllowStaffToSetCheckoutsVisibilityForGuarantor','0'),
54
('AllowStaffToSetFinesVisibilityForGuarantor','0',NULL,'If enabled, library staff can set a patron\'s fines to be visible to linked patrons from the opac.', 'YesNo'),
54
('AllowStaffToSetFinesVisibilityForGuarantor','0'),
55
('AllowTooManyOverride','1',NULL,'If on, allow staff to override and check out items when the patron has reached the maximum number of allowed checkouts','YesNo'),
55
('AllowTooManyOverride','1'),
56
('alphabet','A B C D E F G H I J K L M N O P Q R S T U V W X Y Z',NULL,'Alphabet than can be expanded into browse links, e.g. on Home > Patrons','Free'),
56
('alphabet','A B C D E F G H I J K L M N O P Q R S T U V W X Y Z'),
57
('AlternateHoldingsField','',NULL,'The MARC field/subfield that contains alternate holdings information for bibs taht do not have items attached (e.g. 852abchi for libraries converting from MARC Magician).','Free'),
57
('AlternateHoldingsField',''),
58
('AlternateHoldingsSeparator','',NULL,'The string to use to separate subfields in alternate holdings displays.','Free'),
58
('AlternateHoldingsSeparator',''),
59
('AlwaysLoadCheckoutsTable','0',NULL,'Option to always load the checkout table','YesNo'),
59
('AlwaysLoadCheckoutsTable','0'),
60
('AlwaysShowHoldingsTableFilters','0',NULL,'Option to always show filters when loading the holdings table','YesNo'),
60
('AlwaysShowHoldingsTableFilters','0'),
61
('AmazonAssocTag','',NULL,'See:  http://aws.amazon.com','Free'),
61
('AmazonAssocTag',''),
62
('AmazonCoverImages','0',NULL,'Display Cover Images in staff interface from Amazon Web Services','YesNo'),
62
('AmazonCoverImages','0'),
63
('AmazonLocale','US','US|CA|DE|FR|IN|JP|UK','Use to set the Locale of your Amazon.com Web Services','Choice'),
63
('AmazonLocale','US'),
64
('AnonSuggestions','0',NULL,'Set to enable Anonymous suggestions to AnonymousPatron borrowernumber','YesNo'),
64
('AnonSuggestions','0'),
65
('AnonymousPatron','0',NULL,'Set the identifier (borrowernumber) of the anonymous patron. Used for suggestion and checkout history privacy',''),
65
('AnonymousPatron','0'),
66
('ApiKeyLog', '0', NULL, 'If enabled, log API key actions (create, revoke, activate, delete)', 'YesNo'),
66
('ApiKeyLog', '0'),
67
('ApplyFrameworkDefaults', 'new', 'new|duplicate|changed|imported', 'Configure when to apply framework default values - when cataloguing a new record, or when editing a record as new (duplicating), or when changing framework, or when importing a record', 'multiple'),
67
('ApplyFrameworkDefaults', 'new'),
68
('ArticleRequests', '0', NULL, 'Enables the article request feature', 'YesNo'),
68
('ArticleRequests', '0'),
69
('ArticleRequestsLinkControl', 'calc', 'always|calc', 'Control display of article request link on search results', 'Choice'),
69
('ArticleRequestsLinkControl', 'calc'),
70
('ArticleRequestsMandatoryFields', '', NULL, 'Comma delimited list of required fields for bibs where article requests rule = \'yes\'', 'multiple'),
70
('ArticleRequestsMandatoryFields', ''),
71
('ArticleRequestsMandatoryFieldsItemOnly', '', NULL, 'Comma delimited list of required fields for bibs where article requests rule = \'item_only\'', 'multiple'),
71
('ArticleRequestsMandatoryFieldsItemOnly', ''),
72
('ArticleRequestsMandatoryFieldsRecordOnly', '', NULL, 'Comma delimited list of required fields for bibs where article requests rule = \'bib_only\'', 'multiple'),
72
('ArticleRequestsMandatoryFieldsRecordOnly', ''),
73
('ArticleRequestsOpacHostRedirection', '0', NULL, 'Enables redirection from child to host when requesting articles on the Opac', 'YesNo'),
73
('ArticleRequestsOpacHostRedirection', '0'),
74
('ArticleRequestsSupportedFormats', 'PHOTOCOPY', 'PHOTOCOPY|SCAN', 'List supported formats between vertical bars', 'Choice'),
74
('ArticleRequestsSupportedFormats', 'PHOTOCOPY'),
75
('AudioAlerts','0',NULL,'Enable circulation sounds during checkin and checkout in the staff interface.  Not supported by all web browsers yet.','YesNo'),
75
('AudioAlerts','0'),
76
('AuthDisplayHierarchy','0',NULL,'Display authority hierarchies','YesNo'),
76
('AuthDisplayHierarchy','0'),
77
('AuthFailureLog','0',NULL,'If enabled, log authentication failures','YesNo'),
77
('AuthFailureLog','0'),
78
('AuthoritiesLog','1',NULL,'If ON, log edit/create/delete actions on authorities.','YesNo'),
78
('AuthoritiesLog','1'),
79
('AuthorityControlledIndicators','# PERSO_NAME  100 600 696 700 796 800 896\nmarc21, 100, ind1:auth1\nmarc21, 600, ind1:auth1, ind2:thesaurus\nmarc21, 696, ind1:auth1\nmarc21, 700, ind1:auth1\nmarc21, 796, ind1:auth1\nmarc21, 800, ind1:auth1\nmarc21, 896, ind1:auth1\n# CORPO_NAME  110 610 697 710 797 810 897\nmarc21, 110, ind1:auth1\nmarc21, 610, ind1:auth1, ind2:thesaurus\nmarc21, 697, ind1:auth1\nmarc21, 710, ind1:auth1\nmarc21, 797, ind1:auth1\nmarc21, 810, ind1:auth1\nmarc21, 897, ind1:auth1\n# MEETI_NAME    111 611 698 711 798 811 898\nmarc21, 111, ind1:auth1\nmarc21, 611, ind1:auth1, ind2:thesaurus\nmarc21, 698, ind1:auth1\nmarc21, 711, ind1:auth1\nmarc21, 798, ind1:auth1\nmarc21, 811, ind1:auth1\nmarc21, 898, ind1:auth1\n# UNIF_TITLE        130 440 630 699 730 799 830 899\nmarc21, 130, ind1:auth2\nmarc21, 240, , ind2:auth2\nmarc21, 440, , ind2:auth2\nmarc21, 630, ind1:auth2, ind2:thesaurus\nmarc21, 699, ind1:auth2\nmarc21, 730, ind1:auth2\nmarc21, 799, ind1:auth2\nmarc21, 830, , ind2:auth2\nmarc21, 899, ind1:auth2\n# CHRON_TERM    648 \nmarc21, 648, , ind2:thesaurus\n# TOPIC_TERM      650 654 656 657 658 690\nmarc21, 650, , ind2:thesaurus\n# GEOGR_NAME   651 662 691\nmarc21, 651, , ind2:thesaurus\n# GENRE/FORM    655 \nmarc21, 655, , ind2:thesaurus\n\n# UNIMARC: Always copy the indicators from the authority\nunimarc, *, ind1:auth1, ind2:auth2',NULL,'Authority controlled indicators per biblio field','Free'),
79
('AuthorityControlledIndicators','# PERSO_NAME  100 600 696 700 796 800 896\nmarc21, 100, ind1:auth1\nmarc21, 600, ind1:auth1, ind2:thesaurus\nmarc21, 696, ind1:auth1\nmarc21, 700, ind1:auth1\nmarc21, 796, ind1:auth1\nmarc21, 800, ind1:auth1\nmarc21, 896, ind1:auth1\n# CORPO_NAME  110 610 697 710 797 810 897\nmarc21, 110, ind1:auth1\nmarc21, 610, ind1:auth1, ind2:thesaurus\nmarc21, 697, ind1:auth1\nmarc21, 710, ind1:auth1\nmarc21, 797, ind1:auth1\nmarc21, 810, ind1:auth1\nmarc21, 897, ind1:auth1\n# MEETI_NAME    111 611 698 711 798 811 898\nmarc21, 111, ind1:auth1\nmarc21, 611, ind1:auth1, ind2:thesaurus\nmarc21, 698, ind1:auth1\nmarc21, 711, ind1:auth1\nmarc21, 798, ind1:auth1\nmarc21, 811, ind1:auth1\nmarc21, 898, ind1:auth1\n# UNIF_TITLE        130 440 630 699 730 799 830 899\nmarc21, 130, ind1:auth2\nmarc21, 240, , ind2:auth2\nmarc21, 440, , ind2:auth2\nmarc21, 630, ind1:auth2, ind2:thesaurus\nmarc21, 699, ind1:auth2\nmarc21, 730, ind1:auth2\nmarc21, 799, ind1:auth2\nmarc21, 830, , ind2:auth2\nmarc21, 899, ind1:auth2\n# CHRON_TERM    648 \nmarc21, 648, , ind2:thesaurus\n# TOPIC_TERM      650 654 656 657 658 690\nmarc21, 650, , ind2:thesaurus\n# GEOGR_NAME   651 662 691\nmarc21, 651, , ind2:thesaurus\n# GENRE/FORM    655 \nmarc21, 655, , ind2:thesaurus\n\n# UNIMARC: Always copy the indicators from the authority\nunimarc, *, ind1:auth1, ind2:auth2'),
80
('AuthorityMergeLimit','50',NULL,'Maximum number of biblio records updated immediately when an authority record has been modified.','Integer'),
80
('AuthorityMergeLimit','50'),
81
('AuthorityMergeMode','loose','loose|strict','Authority merge mode','Choice'),
81
('AuthorityMergeMode','loose'),
82
('AuthoritySeparator','--',NULL,'Used to separate a list of authorities in a display. Usually --','Free'),
82
('AuthoritySeparator','--'),
83
('AuthorityXSLTDetailsDisplay','',NULL,'Enable XSL stylesheet control over authority details page display on intranet','Free'),
83
('AuthorityXSLTDetailsDisplay',''),
84
('AuthorityXSLTOpacDetailsDisplay','',NULL,'Enable XSL stylesheet control over authority details page in the OPAC','Free'),
84
('AuthorityXSLTOpacDetailsDisplay',''),
85
('AuthorityXSLTOpacResultsDisplay','',NULL,'Enable XSL stylesheet control over authority results page in the OPAC','Free'),
85
('AuthorityXSLTOpacResultsDisplay',''),
86
('AuthorityXSLTResultsDisplay','',NULL,'Enable XSL stylesheet control over authority results page display on intranet','Free'),
86
('AuthorityXSLTResultsDisplay',''),
87
('AuthorLinkSortBy','default','call_number|pubdate|acqdate|title','Specify the default field used for sorting when click author links','Choice'),
87
('AuthorLinkSortBy','default'),
88
('AuthorLinkSortOrder','asc','asc|dsc|az|za','Specify the default sort order for author links','Choice'),
88
('AuthorLinkSortOrder','asc'),
89
('AuthSuccessLog','0',NULL,'If enabled, log successful authentications','YesNo'),
89
('AuthSuccessLog','0'),
90
('AutoApprovePatronProfileSettings', '0', NULL, 'Automatically approve patron profile changes from the OPAC.', 'YesNo'),
90
('AutoApprovePatronProfileSettings', '0'),
91
('autoBarcode','OFF','incremental|annual|hbyymmincr|EAN13|OFF','Used to autogenerate a barcode: incremental will be of the form 1, 2, 3; annual of the form 2007-0001, 2007-0002; hbyymmincr of the form HB08010001 where HB=Home Branch','Choice'),
91
('autoBarcode','OFF'),
92
('AutoClaimReturnStatusOnCheckin','',NULL,'When in use this system preference will automatically resolve the claim return and will update the lost authorized value upon check in.','Free'),
92
('AutoClaimReturnStatusOnCheckin',''),
93
('AutoClaimReturnStatusOnCheckout','',NULL,'When in use this system preference will automatically resolve the claim return and will update the lost authorized value upon check out.','Free'),
93
('AutoClaimReturnStatusOnCheckout',''),
94
('autoControlNumber','OFF','biblionumber|OFF','Used to autogenerate a Control Number: biblionumber will be as biblionumber, OFF will leave the field as it is;','Choice'),
94
('autoControlNumber','OFF'),
95
('AutoCreateAuthorities','0',NULL,'Automatically create authorities that do not exist when cataloging records.','YesNo'),
95
('AutoCreateAuthorities','0'),
96
('AutoCreditNumber', '', NULL, 'Automatically generate a number for account credits', 'Choice'),
96
('AutoCreditNumber', ''),
97
('AutoEmailNewUser','0',NULL,'Send an email to newly created patrons.','YesNo'),
97
('AutoEmailNewUser','0'),
98
('AutoILLBackendPriority','',NULL,'Set the automatic backend selection priority','ill-backends'),
98
('AutoILLBackendPriority',''),
99
('AutoLinkBiblios','0',NULL,'If enabled, link biblio to authorities on creation and edit','YesNo'),
99
('AutoLinkBiblios','0'),
100
('AutomaticCheckinAutoFill','0',NULL,'Automatically fill the next hold with an automatic check in.','YesNo'),
100
('AutomaticCheckinAutoFill','0'),
101
('AutomaticConfirmTransfer','0',NULL,'Defines whether transfers should be automatically confirmed at checkin if modal dismissed','YesNo'),
101
('AutomaticConfirmTransfer','0'),
102
('AutomaticEmailReceipts','0',NULL,'Send email receipts for payments and write-offs','YesNo'),
102
('AutomaticEmailReceipts','0'),
103
('AutomaticItemReturn','1',NULL,'If ON, Koha will automatically set up a transfer of this item to its homebranch','YesNo'),
103
('AutomaticItemReturn','1'),
104
('AutomaticRenewalPeriodBase','date_due','date_due|now','Set whether the renewal date should be counted from the date_due or from the moment the Patron asks for renewal, for automatic renewals ','Choice'),
104
('AutomaticRenewalPeriodBase','date_due'),
105
('autoMemberNum','0',NULL,'If ON, patron number is auto-calculated','YesNo'),
105
('autoMemberNum','0'),
106
('AutoRemoveOverduesRestrictions','no','no|when_no_overdue|when_no_overdue_causing_debarment', 'Defines if and on what conditions OVERDUES debarments should automatically be lifted when overdue items are returned by the patron.','Choice'),
106
('AutoRemoveOverduesRestrictions','no'),
107
('AutoRenewalNotices','preferences','cron|preferences|never','How should Koha determine whether to end autorenewal notices','Choice'),
107
('AutoRenewalNotices','preferences'),
108
('AutoResumeSuspendedHolds','1',NULL,'Allow suspended holds to be automatically resumed by a set date.','YesNo'),
108
('AutoResumeSuspendedHolds','1'),
109
('AutoReturnCheckedOutItems', '0', NULL, 'If disabled, librarian must confirm return of checked out item when checking out to another.', 'YesNo'),
109
('AutoReturnCheckedOutItems', '0'),
110
('AutoSelfCheckAllowed','0',NULL,'For corporate and special libraries which want web-based self-check available from any PC without the need for a manual staff login. Most libraries will want to leave this turned off. If on, requires self-check ID and password to be entered in AutoSelfCheckID and AutoSelfCheckPass sysprefs.','YesNo'),
110
('AutoSelfCheckAllowed','0'),
111
('AutoSelfCheckID','',NULL,'Staff ID with circulation rights to be used for automatic web-based self-check. Only applies if AutoSelfCheckAllowed syspref is turned on.','Free'),
111
('AutoSelfCheckID',''),
112
('AutoSelfCheckPass','',NULL,'Password to be used for automatic web-based self-check. Only applies if AutoSelfCheckAllowed syspref is turned on.','Free'),
112
('AutoSelfCheckPass',''),
113
('AutoShareWithMana','subscription',NULL,'defines datas automatically shared with mana','multiple'),
113
('AutoShareWithMana','subscription'),
114
('AutoSwitchPatron', '0', NULL, 'Auto switch to patron', 'YesNo'),
114
('AutoSwitchPatron', '0'),
115
('Babeltheque','0',NULL,'Turn ON Babeltheque content - See babeltheque.com to subscribe to this service','YesNo'),
115
('Babeltheque','0'),
116
('Babeltheque_url_js','',NULL,'Url for Babeltheque javascript (e.g. http://www.babeltheque.com/bw_XX.js)','Free'),
116
('Babeltheque_url_js',''),
117
('Babeltheque_url_update','',NULL,'Url for Babeltheque update (E.G. http://www.babeltheque.com/.../file.csv.bz2)','Free'),
117
('Babeltheque_url_update',''),
118
('BakerTaylorBookstoreURL','',NULL,'URL template for "My Libary Bookstore" links, to which the "key" value is appended, and "https://" is prepended.  It should include your hostname and "Parent Number".  Make this variable empty to turn MLB links off.  Example: ocls.mylibrarybookstore.com/MLB/actions/searchHandler.do?nextPage=bookDetails&parentNum=10923&key=',''),
118
('BakerTaylorBookstoreURL',''),
119
('BakerTaylorEnabled','0',NULL,'Enable or disable all Baker & Taylor features.','YesNo'),
119
('BakerTaylorEnabled','0'),
120
('BakerTaylorPassword','',NULL,'Baker & Taylor Password for Content Cafe (external content)','Free'),
120
('BakerTaylorPassword',''),
121
('BakerTaylorUsername','',NULL,'Baker & Taylor Username for Content Cafe (external content)','Free'),
121
('BakerTaylorUsername',''),
122
('BarcodeSeparators','\\s\\r\\n',NULL,'Splitting characters for barcodes','Free'),
122
('BarcodeSeparators','\\s\\r\\n'),
123
('BasketConfirmations','1','always ask for confirmation.|do not ask for confirmation.','When closing or reopening a basket,','Choice'),
123
('BasketConfirmations','1'),
124
('BatchCheckouts','0',NULL,'Enable or disable batch checkouts','YesNo'),
124
('BatchCheckouts','0'),
125
('BatchCheckoutsValidCategories','',NULL,'Patron categories allowed to checkout in a batch','Free'),
125
('BatchCheckoutsValidCategories',''),
126
('BiblioDefaultView','normal','normal|marc|isbd','Choose the default detail view in the catalog; choose between normal, marc or isbd','Choice'),
126
('BiblioDefaultView','normal'),
127
('BiblioItemtypeInfo','0',NULL,'Control which itemtype info displays for biblio level itemtypes','YesNo'),
127
('BiblioItemtypeInfo','0'),
128
('BibtexExportAdditionalFields','',NULL,'Define additional BibTex tags to export from MARC records in YAML format as an associative array with either a marc tag/subfield combination as the value, or a list of tag/subfield combinations.','textarea'),
128
('BibtexExportAdditionalFields',''),
129
('BlockExpiredPatronOpacActions','','hold,renew,ill_request','Specific actions expired patrons of this category are blocked from performing. OPAC actions blocked based on the patron category take priority over this preference.','multiple'),
129
('BlockExpiredPatronOpacActions',''),
130
('BlockReturnOfLostItems','0',NULL,'If enabled, items that are marked as lost cannot be returned.','YesNo'),
130
('BlockReturnOfLostItems','0'),
131
('BlockReturnOfWithdrawnItems','1',NULL,'If enabled, items that are marked as withdrawn cannot be returned.','YesNo'),
131
('BlockReturnOfWithdrawnItems','1'),
132
('BorrowerMandatoryField','surname|cardnumber',NULL,'Choose the mandatory fields for a patron\'s account','Free'),
132
('BorrowerMandatoryField','surname|cardnumber'),
133
('borrowerRelationship','father|mother',NULL,'Define valid relationships between a guarantor & a guarantee (separated by | or ,)','Free'),
133
('borrowerRelationship','father|mother'),
134
('BorrowerRenewalPeriodBase','now','dateexpiry|now|combination','Set whether the borrower renewal date should be counted from the dateexpiry, from the current date or by combination: if the dateexpiry is in future use dateexpiry, else use current date ','Choice'),
134
('BorrowerRenewalPeriodBase','now'),
135
('BorrowersLog','1',NULL,'If ON, log edit/create/delete actions on patron data','YesNo'),
135
('BorrowersLog','1'),
136
('BorrowersTitles','Mr|Mrs|Miss|Ms',NULL,'Define appropriate Titles for patrons','Free'),
136
('BorrowersTitles','Mr|Mrs|Miss|Ms'),
137
('BorrowerUnwantedField','',NULL,'Name the fields you don\'t need to store for a patron\'s account','Free'),
137
('BorrowerUnwantedField',''),
138
('BranchTransferLimitsType','ccode','itemtype|ccode','When using branch transfer limits, choose whether to limit by itemtype or collection code.','Choice'),
138
('BranchTransferLimitsType','ccode'),
139
('BrowseResultSelection','0',NULL,'Enable/Disable browsing search results fromt the bibliographic record detail page in staff interface','YesNo'),
139
('BrowseResultSelection','0'),
140
('BundleLostValue','5',NULL,'Sets the LOST AV value that represents "Missing from bundle" as a lost value','Free'),
140
('BundleLostValue','5'),
141
('BundleNotLoanValue','3',NULL,'Sets the NOT_LOAN AV value that represents "Added to bundle" as a not for loan value','Free'),
141
('BundleNotLoanValue','3'),
142
('CalculateFinesOnBackdate','1',NULL,'Switch to control if overdue fines are calculated on return when backdating','YesNo'),
142
('CalculateFinesOnBackdate','1'),
143
('CalculateFinesOnReturn','1',NULL,'Switch to control if overdue fines are calculated on return or not','YesNo'),
143
('CalculateFinesOnReturn','1'),
144
('CalculateFundValuesIncludingTax', '1', NULL, 'Include tax in the calculated fund values (spent, ordered) for all supplier configurations', 'YesNo'),
144
('CalculateFundValuesIncludingTax', '1'),
145
('CalendarFirstDayOfWeek','0','0|1|2|3|4|5|6','Select the first day of week to use in the calendar.','Choice'),
145
('CalendarFirstDayOfWeek','0'),
146
('CancelOrdersInClosedBaskets', '0', NULL, 'Allow/Do not allow cancelling order lines in closed baskets.', 'YesNo'),
146
('CancelOrdersInClosedBaskets', '0'),
147
('CanMarkHoldsToPullAsLost','do_not_allow','do_not_allow|allow|allow_and_notify','Add a button to the "Holds to pull" screen to mark an item as lost and notify the patron.','Choice'),
147
('CanMarkHoldsToPullAsLost','do_not_allow'),
148
('canreservefromotherbranches','1',NULL,'With Independent branches on, can a user from one library place a hold on an item from another library','YesNo'),
148
('canreservefromotherbranches','1'),
149
('CardnumberLength', '', NULL, 'Set a length for card numbers with a maximum of 32 characters.', 'Free'),
149
('CardnumberLength', ''),
150
('CardnumberLog','1',NULL,'If ON, log edit actions on patron cardnumbers','YesNo'),
150
('CardnumberLog','1'),
151
('casAuthentication','0',NULL,'Enable or disable CAS authentication','YesNo'),
151
('casAuthentication','0'),
152
('casLogout','0',NULL,'Does a logout from Koha should also log the user out of CAS?','YesNo'),
152
('casLogout','0'),
153
('casServerUrl','https://localhost:8443/cas',NULL,'URL of the cas server','Free'),
153
('casServerUrl','https://localhost:8443/cas'),
154
('casServerVersion','2', '2|3','Version of the CAS server Koha will connect to.','Choice'),
154
('casServerVersion','2'),
155
('CatalogConcerns', '0', NULL, 'Allow users to report catalog concerns', 'YesNo'),
155
('CatalogConcerns', '0'),
156
('CatalogerEmails', '', NULL, 'Notify these catalogers by email when a catalog concern is submitted', 'Free'),
156
('CatalogerEmails', ''),
157
('CatalogModuleRelink','0',NULL,'If OFF the linker will never replace the authids that are set in the cataloging module.','YesNo'),
157
('CatalogModuleRelink','0'),
158
('CataloguingLog','1',NULL,'If ON, log edit/create/delete actions on bibliographic data. WARNING: this feature is very resource consuming.','YesNo'),
158
('CataloguingLog','1'),
159
('ChargeFinesOnClosedDays','0',NULL,'Charge fines on days the library is closed.','YesNo'),
159
('ChargeFinesOnClosedDays','0'),
160
('CheckPrevCheckout','hardno','hardyes|softyes|softno|hardno','By default, for every item checked out, should we warn if the patron has borrowed that item in the past?','Choice'),
160
('CheckPrevCheckout','hardno'),
161
('CheckPrevCheckoutDelay','0', NULL,'Maximum number of days that will trigger a warning if the patron has borrowed that item in the past when CheckPrevCheckout is enabled.','Free'),
161
('CheckPrevCheckoutDelay','0'),
162
('ChildNeedsGuarantor','0',NULL,'If ON, a child patron must have a guarantor when adding the patron.','YesNo'),
162
('ChildNeedsGuarantor','0'),
163
('CircAutoPrintQuickSlip','qslip',NULL,'Choose what should happen when an empty barcode field is submitted in circulation: Display a print quick slip window, Display a print slip window, Do nothing, or Clear the screen.','Choice'),
163
('CircAutoPrintQuickSlip','qslip'),
164
('CircConfirmItemParts', '0', NULL, 'Require staff to confirm that all parts of an item are present at checkin/checkout.', 'YesNo'),
164
('CircConfirmItemParts', '0'),
165
('CircControl','ItemHomeLibrary','PickupLibrary|PatronLibrary|ItemHomeLibrary','Specify the agency that controls the circulation and fines policy','Choice'),
165
('CircControl','ItemHomeLibrary'),
166
('CircControlReturnsBranch','ItemHomeLibrary','ItemHomeLibrary|ItemHoldingLibrary|CheckInLibrary','Specify the agency that controls the return policy','Choice'),
166
('CircControlReturnsBranch','ItemHomeLibrary'),
167
('CircSidebar','1',NULL,'Activate or deactivate the navigation sidebar on all Circulation pages','YesNo'),
167
('CircSidebar','1'),
168
('CirculateILL','0',NULL,'If enabled, it is possible to circulate ILL items from within ILL','YesNo'),
168
('CirculateILL','0'),
169
('ClaimReturnedChargeFee', 'ask', 'ask|charge|no_charge', 'Controls whether or not a lost item fee is charged for return claims', 'Choice'),
169
('ClaimReturnedChargeFee', 'ask'),
170
('ClaimReturnedLostValue', '', NULL, 'Sets the LOST AV value that represents "Claims returned" as a lost value', 'Free'),
170
('ClaimReturnedLostValue', ''),
171
('ClaimReturnedWarningThreshold', '', NULL, 'Sets the number of return claims past which the librarian will be warned the patron has many return claims', 'Integer'),
171
('ClaimReturnedWarningThreshold', ''),
172
('ClaimsBccCopy','0',NULL,'Bcc the ClaimAcquisition and ClaimIssues alerts','YesNo'),
172
('ClaimsBccCopy','0'),
173
('ClaimsLog','1',NULL,'If ON, log all notices sent','YesNo'),
173
('ClaimsLog','1'),
174
('CleanUpDatabaseReturnClaims', '', NULL, 'Sets the age of resolved return claims to delete from the database for cleanup_database.pl', 'Integer'),
174
('CleanUpDatabaseReturnClaims', ''),
175
('CoceHost', '', NULL, 'Coce server URL', 'Free'),
175
('CoceHost', ''),
176
('CoceProviders', '', 'aws,gb,ol', 'Coce providers', 'multiple'),
176
('CoceProviders', ''),
177
('COinSinOPACResults','1',NULL,'If ON, use COinS in OPAC search results page.  NOTE: this can slow down search response time significantly','YesNo'),
177
('COinSinOPACResults','1'),
178
('CollapseFieldsPatronAddForm','',NULL,'Collapse these fields by default when adding a new patron. These fields can still be expanded.','Multiple'),
178
('CollapseFieldsPatronAddForm',''),
179
('ComponentSortField','title','call_number|pubdate|acqdate|title|author','Specify the default field used for sorting','Choice'),
179
('ComponentSortField','title'),
180
('ComponentSortOrder','asc','asc|dsc|az|za','Specify the default sort order','Choice'),
180
('ComponentSortOrder','asc'),
181
('ConfirmFutureHolds','0',NULL,'Number of days for confirming future holds','Integer'),
181
('ConfirmFutureHolds','0'),
182
('ConsiderHeadingUse', '0', NULL, 'Consider MARC21 authority heading use (main/added entry, or subject, or series title) in cataloging and linking', 'YesNo'),
182
('ConsiderHeadingUse', '0'),
183
('ConsiderLibraryHoursInCirculation', 'close', 'close|open|ignore', 'Take library opening hours into consideration to calculate due date when circulating.', 'Choice'),
183
('ConsiderLibraryHoursInCirculation', 'close'),
184
('ConsiderOnSiteCheckoutsAsNormalCheckouts','1',NULL,'Consider on-site checkouts as normal checkouts','YesNo'),
184
('ConsiderOnSiteCheckoutsAsNormalCheckouts','1'),
185
('ContentWarningField', '', NULL, 'MARC field to use for content warnings', 'Free'),
185
('ContentWarningField', ''),
186
('CookieConsent', '0', NULL, 'Require cookie consent to be displayed', 'YesNo'),
186
('CookieConsent', '0'),
187
('CookieConsentedJS', '', NULL, 'Add Javascript code that will run if cookie consent is provided (e.g. tracking code).', 'Free'),
187
('CookieConsentedJS', ''),
188
('CreateAVFromCataloguing', '1', NULL, 'Ability to create authorized values from the cataloguing module', 'YesNo'),
188
('CreateAVFromCataloguing', '1'),
189
('CronjobLog','0',NULL,'If ON, log information from cron jobs.','YesNo'),
189
('CronjobLog','0'),
190
('CSVDelimiter',',',';|tabulation|,|/|\\|#||','Define the default separator character for exporting reports','Choice'),
190
('CSVDelimiter',','),
191
('CumulativeRestrictionPeriods','0',NULL,'Cumulate the restriction periods instead of keeping the highest','YesNo'),
191
('CumulativeRestrictionPeriods','0'),
192
('CurbsidePickup', '0', NULL, 'Enable curbside pickup', 'YesNo'),
192
('CurbsidePickup', '0'),
193
('CurrencyFormat','US','US|FR|CH','Determines the display format of currencies. eg: \'36000\' is displayed as \'360 000,00\'  in \'FR\' or \'360,000.00\'  in \'US\'.','Choice'),
193
('CurrencyFormat','US'),
194
('CustomCoverImages','0',NULL,'If enabled, the custom cover images will be displayed in the staff interface. CustomCoverImagesURL must be defined.','YesNo'),
194
('CustomCoverImages','0'),
195
('CustomCoverImagesURL','',NULL,'Define an URL serving book cover images, using the following patterns: %issn%, %isbn%, FIXME ADD MORE (use it with CustomCoverImages and/or OPACCustomCoverImages)','Free'),
195
('CustomCoverImagesURL',''),
196
('dateformat','us','metric|us|iso|dmydot','Define global date format (us mm/dd/yyyy, metric dd/mm/yyy, ISO yyyy-mm-dd, dmydot dd.mm.yyyy)','Choice'),
196
('dateformat','us'),
197
('DebugLevel','2','0|1|2','Define the level of debugging information sent to the browser when errors are encountered (set to 0 in production). 0=none, 1=some, 2=most','Choice'),
197
('DebugLevel','2'),
198
('decreaseLoanHighHolds','0',NULL,'Decreases the loan period for items with number of holds above the threshold specified in decreaseLoanHighHoldsValue','YesNo'),
198
('decreaseLoanHighHolds','0'),
199
('decreaseLoanHighHoldsControl', 'static', 'static|dynamic', 'Chooses between static and dynamic high holds checking', 'Choice'),
199
('decreaseLoanHighHoldsControl', 'static'),
200
('decreaseLoanHighHoldsDuration','',NULL,'Specifies a number of days that a loan is reduced to when used in conjunction with decreaseLoanHighHolds','Integer'),
200
('decreaseLoanHighHoldsDuration',''),
201
('decreaseLoanHighHoldsIgnoreStatuses', '', 'damaged|itemlost|notforloan|withdrawn', 'Ignore items with these statuses for dynamic high holds checking', 'Choice'),
201
('decreaseLoanHighHoldsIgnoreStatuses', ''),
202
('decreaseLoanHighHoldsValue','',NULL,'Specifies a threshold for the minimum number of holds needed to trigger a reduction in loan duration (used with decreaseLoanHighHolds)','Integer'),
202
('decreaseLoanHighHoldsValue',''),
203
('DefaultAuthorityTab','0','0|1|2|3|4|5|6|7|8|9','Default tab to shwo when displaying authorities','Choice'),
203
('DefaultAuthorityTab','0'),
204
('DefaultClassificationSource','ddc',NULL,'Default classification scheme used by the collection. E.g., Dewey, LCC, etc.','ClassSources'),
204
('DefaultClassificationSource','ddc'),
205
('DefaultCountryField008','',NULL,'Fill in the default country code for field 008 Range 15-17 of MARC21 - Place of publication, production, or execution. See <a href="http://www.loc.gov/marc/countries/countries_code.html">MARC Code List for Countries</a>','Free'),
205
('DefaultCountryField008',''),
206
('DefaultHoldExpirationdate','0',NULL,'Automatically set expiration date for holds','YesNo'),
206
('DefaultHoldExpirationdate','0'),
207
('DefaultHoldExpirationdatePeriod','0',NULL,'How long into the future default expiration date is set to be.','Integer'),
207
('DefaultHoldExpirationdatePeriod','0'),
208
('DefaultHoldExpirationdateUnitOfTime','days','days|months|years','Which unit of time is used when setting the default expiration date. ','choice'),
208
('DefaultHoldExpirationdateUnitOfTime','days'),
209
('DefaultHoldPickupLocation','loggedinlibrary','loggedinlibrary|homebranch|holdingbranch','Which branch should a hold pickup location default to. ','choice'),
209
('DefaultHoldPickupLocation','loggedinlibrary'),
210
('DefaultLanguageField008','',NULL,'Fill in the default language for field 008 Range 35-37 of MARC21 records (e.g. eng, nor, ger, see <a href="http://www.loc.gov/marc/languages/language_code.html">MARC Code List for Languages</a>)','Free'),
210
('DefaultLanguageField008',''),
211
('DefaultLongOverdueChargeValue', '', NULL, 'Charge a lost item to the borrower\'s account when the LOST value of the item changes to n.', 'Integer'),
211
('DefaultLongOverdueChargeValue', ''),
212
('DefaultLongOverdueDays', '', NULL, 'Set the LOST value of an item when the item has been overdue for more than n days.', 'Integer'),
212
('DefaultLongOverdueDays', ''),
213
('DefaultLongOverdueLostValue', '', NULL, 'Set the LOST value of an item to n when the item has been overdue for more than defaultlongoverduedays days.', 'Integer'),
213
('DefaultLongOverdueLostValue', ''),
214
('DefaultLongOverduePatronCategories', '', NULL, 'Set the patron categories that will be listed when longoverdue cronjob is executed', 'choice'),
214
('DefaultLongOverduePatronCategories', ''),
215
('DefaultLongOverdueSkipLostStatuses', '', NULL, 'Skip these lost statuses by default in longoverdue.pl', 'Free'),
215
('DefaultLongOverdueSkipLostStatuses', ''),
216
('DefaultLongOverdueSkipPatronCategories', '', NULL, 'Set the patron categories that will not be listed when longoverdue cronjob is executed', 'choice'),
216
('DefaultLongOverdueSkipPatronCategories', ''),
217
('DefaultPatronSearchFields','firstname|preferred_name|middle_name|surname|othernames|cardnumber|userid',NULL,'Pipe separated list defining the default fields to be used during a patron search using the "standard" option. If empty Koha will default to "firstname|surname|othernames|cardnumber|userid". Additional fields added to this preference will be added as search options in the dropdown menu on the patron search page.','Free'),
217
('DefaultPatronSearchFields','firstname|preferred_name|middle_name|surname|othernames|cardnumber|userid'),
218
('DefaultPatronSearchMethod','starts_with','starts_with|contains','Choose which search method to use by default when searching with PatronAutoComplete','Choice'),
218
('DefaultPatronSearchMethod','starts_with'),
219
('DefaultSaveRecordFileID','biblionumber','biblionumber|controlnumber','Defines whether the advanced cataloging editor will use the bibliographic record number or control number field to populate the name of the save file','Choice'),
219
('DefaultSaveRecordFileID','biblionumber'),
220
('defaultSortField','relevance','relevance|popularity|call_number|pubdate|acqdate|title|author','Specify the default field used for sorting','Choice'),
220
('defaultSortField','relevance'),
221
('defaultSortOrder','dsc','asc|dsc|az|za','Specify the default sort order','Choice'),
221
('defaultSortOrder','dsc'),
222
('DefaultToLoggedInLibraryCircRules', '0', NULL, 'If enabled, circ rules editor will default to the logged in library\'s rules, rather than the \'all libraries\' rules.', 'YesNo'),
222
('DefaultToLoggedInLibraryCircRules', '0'),
223
('DefaultToLoggedInLibraryNoticesSlips','0', NULL, 'If enabled,slips and notices editor will default to the logged in library\'s rules, rather than the \'all libraries\' rules.', 'YesNo'),
223
('DefaultToLoggedInLibraryNoticesSlips','0'),
224
('DefaultToLoggedInLibraryOverdueTriggers', '0', NULL, 'If enabled, overdue status triggers editor will default to the logged in library\'s rules, rather than the \'default\' rules.', 'YesNo'),
224
('DefaultToLoggedInLibraryOverdueTriggers', '0'),
225
('Display856uAsImage','OFF','OFF|Details|Results|Both','Display the URI in the 856u field as an image, the corresponding staff interface XSLT option must be on','Choice'),
225
('Display856uAsImage','OFF'),
226
('DisplayAddHoldGroups','0',NULL,'Display the ability to create hold groups which are fulfilled by one item','YesNo'),
226
('DisplayAddHoldGroups','0'),
227
('DisplayClearScreenButton','no','no|issueslip|issueqslip','If set to ON, a clear screen button will appear on the circulation page.','Choice'),
227
('DisplayClearScreenButton','no'),
228
('displayFacetCount','0',NULL,'If enabled, display the number of facet counts','YesNo'),
228
('displayFacetCount','0'),
229
('DisplayIconsXSLT','1',NULL,'If ON, displays the format, audience, and material type icons in XSLT MARC21 results and detail pages.','YesNo'),
229
('DisplayIconsXSLT','1'),
230
('DisplayLibraryFacets', 'holding', 'home|holding|both', 'Defines which library facets to display.', 'Choice'),
230
('DisplayLibraryFacets', 'holding'),
231
('DisplayMultiItemHolds','0',NULL,'Display the ability to place holds on different items at the same time in staff interface and OPAC','YesNo'),
231
('DisplayMultiItemHolds','0'),
232
('DisplayMultiPlaceHold','1',NULL,'Display the ability to place multiple holds or not','YesNo'),
232
('DisplayMultiPlaceHold','1'),
233
('DisplayOPACiconsXSLT','1',NULL,'If ON, displays the format, audience, and material type icons in XSLT MARC21 results and detail pages in the OPAC.','YesNo'),
233
('DisplayOPACiconsXSLT','1'),
234
('DisplayPublishedDate', '1', NULL, 'Display serial publisheddate on detail pages', 'YesNo'),
234
('DisplayPublishedDate', '1'),
235
('DumpSearchQueryTemplate','0',NULL,'Add the search query being passed to the search engine into the template for debugging','YesNo'),
235
('DumpSearchQueryTemplate','0'),
236
('DumpTemplateVarsIntranet', '0', NULL, 'If enabled, dump all Template Toolkit variable to a comment in the html source for the staff intranet.', 'YesNo'),
236
('DumpTemplateVarsIntranet', '0'),
237
('DumpTemplateVarsOpac', '0', NULL, 'If enabled, dump all Template Toolkit variable to a comment in the html source for the opac.', 'YesNo'),
237
('DumpTemplateVarsOpac', '0'),
238
('EasyAnalyticalRecords','0',NULL,'If on, display in the catalogue screens tools to easily setup analytical record relationships','YesNo'),
238
('EasyAnalyticalRecords','0'),
239
('EDIFACT','0',NULL,'Enables EDIFACT acquisitions functions','YesNo'),
239
('EDIFACT','0'),
240
('EdifactInvoiceImport', 'automatic', 'automatic|manual', 'If on, don\'t auto-import EDI invoices, just keep them in the database with the status \'new\'', 'Choice'),
240
('EdifactInvoiceImport', 'automatic'),
241
('EdifactLSL', 'ccode', 'location|ccode|', 'Map EDI sub-location code (GIR+LSL) to Koha Item field, empty to ignore', 'Choice'),
241
('EdifactLSL', 'ccode'),
242
('EdifactLSQ', 'location', 'location|ccode|', 'Map EDI sequence code (GIR+LSQ) to Koha Item field, empty to ignore', 'Choice'),
242
('EdifactLSQ', 'location'),
243
('ElasticsearchBoostFieldMatch', '0', NULL, 'Add a "match" query to es when searching, will follow indexes chosen in advanced search, or use title-cover for generic keyword or title index search', 'YesNo'),
243
('ElasticsearchBoostFieldMatch', '0'),
244
('ElasticsearchCrossFields', '1', NULL, 'Enable "cross_fields" option for searches using Elastic search.', 'YesNo'),
244
('ElasticsearchCrossFields', '1'),
245
('ElasticsearchIndexStatus_authorities', '0', 'Authorities index status', NULL, NULL),
245
('ElasticsearchIndexStatus_authorities', '0'),
246
('ElasticsearchIndexStatus_biblios', '0', 'Biblios index status', NULL, NULL),
246
('ElasticsearchIndexStatus_biblios', '0'),
247
('ElasticsearchMARCFormat', 'base64ISO2709', 'base64ISO2709|ARRAY', 'Elasticsearch MARC format. ISO2709 format is recommended as it is faster and takes less space, whereas array is searchable.', 'Choice'),
247
('ElasticsearchMARCFormat', 'base64ISO2709'),
248
('ElasticsearchPreventAutoTruncate', 'barcode|control-number|control-number-identifier|date-of-acquisition|date-of-publication|date-time-last-modified|identifier-standard|isbn|issn|itype|lc-card-number|number-local-acquisition|other-control-number|record-control-number', NULL, 'List of searchfields (separated by | or ,) that should not be autotruncated by Elasticsearch even if QueryAutoTruncate is set to Yes', 'Free'),
248
('ElasticsearchPreventAutoTruncate', 'barcode|control-number|control-number-identifier|date-of-acquisition|date-of-publication|date-time-last-modified|identifier-standard|isbn|issn|itype|lc-card-number|number-local-acquisition|other-control-number|record-control-number'),
249
('EmailAddressForPatronRegistrations', '', NULL, ' If you choose EmailAddressForPatronRegistrations you have to enter a valid email address: ', 'Free'),
249
('EmailAddressForPatronRegistrations', ''),
250
('EmailAddressForSuggestions','',NULL,' If you choose EmailAddressForSuggestions you have to enter a valid email address: ','Free'),
250
('EmailAddressForSuggestions',''),
251
('EmailFieldPrecedence','email|emailpro|B_email',NULL,'Ordered list of patron email fields to use when AutoEmailPrimaryAddress is set to first valid','multiple'),
251
('EmailFieldPrecedence','email|emailpro|B_email'),
252
('EmailFieldPrimary','','|email|emailpro|B_email|cardnumber|MULTI','Defines the default email address field where patron email notices are sent.','Choice'),
252
('EmailFieldPrimary',''),
253
('EmailFieldSelection','','email|emailpro|B_email','Selection list of patron email fields to use whern AutoEmailPrimaryAddress is set to selected addresses','multiple'),
253
('EmailFieldSelection',''),
254
('emailLibrarianWhenHoldIsPlaced','0',NULL,'If ON, emails the librarian whenever a hold is placed','YesNo'),
254
('emailLibrarianWhenHoldIsPlaced','0'),
255
('EmailOverduesNoEmail','1',NULL,'Send send overdues of patrons without email address to staff','YesNo'),
255
('EmailOverduesNoEmail','1'),
256
('EmailPatronRegistrations', '0', '0|EmailAddressForPatronRegistrations|BranchEmailAddress|KohaAdminEmailAddress', 'Choose email address that new patron registrations will be sent to: ', 'Choice'),
256
('EmailPatronRegistrations', '0'),
257
('EmailPatronWhenHoldIsPlaced', '0', NULL, 'Email patron when a hold has been placed for them', 'YesNo'),
257
('EmailPatronWhenHoldIsPlaced', '0'),
258
('EmailPurchaseSuggestions','0','0|EmailAddressForSuggestions|BranchEmailAddress|KohaAdminEmailAddress','Choose email address that new purchase suggestions will be sent to: ','Choice'),
258
('EmailPurchaseSuggestions','0'),
259
('EmailSMSSendDriverFromAddress', '', NULL, 'Email SMS send driver from address override', 'Free'),
259
('EmailSMSSendDriverFromAddress', ''),
260
('EnableAdvancedCatalogingEditor','0',NULL,'Enable the Rancor advanced cataloging editor','YesNo'),
260
('EnableAdvancedCatalogingEditor','0'),
261
('EnableBooking','1',NULL,'If enabled, activate every functionalities related with Bookings module','YesNo'),
261
('EnableBooking','1'),
262
('EnableBorrowerFiles','0',NULL,'If enabled, allows librarians to upload and attach arbitrary files to a borrower record.','YesNo'),
262
('EnableBorrowerFiles','0'),
263
('EnableExpiredPasswordReset', '0', NULL, 'Enable ability for patrons with expired password to reset their password directly', 'YesNo'),
263
('EnableExpiredPasswordReset', '0'),
264
('EnableItemGroupHolds','0',NULL,'Enable item groups holds feature','YesNo'),
264
('EnableItemGroupHolds','0'),
265
('EnableItemGroups','0',NULL,'Enable the item groups feature','YesNo'),
265
('EnableItemGroups','0'),
266
('EnableOpacSearchHistory','1','YesNo','Enable or disable opac search history',''),
266
('EnableOpacSearchHistory','1'),
267
('EnablePointOfSale','0',NULL,'Enable the point of sale feature to allow anonymous transactions with the accounting system. (Requires UseCashRegisters)','YesNo'),
267
('EnablePointOfSale','0'),
268
('EnableSearchHistory','0',NULL,'Enable or disable search history','YesNo'),
268
('EnableSearchHistory','0'),
269
('EnhancedMessagingPreferences','1',NULL,'If ON, allows patrons to select to receive additional messages about items due or nearly due.','YesNo'),
269
('EnhancedMessagingPreferences','1'),
270
('EnhancedMessagingPreferencesOPAC', '1', NULL, 'If ON, show patrons messaging setting on the OPAC.', 'YesNo'),
270
('EnhancedMessagingPreferencesOPAC', '1'),
271
('ERMModule', '0', NULL, 'Enable the e-resource management module', 'YesNo'),
271
('ERMModule', '0'),
272
('ERMProviderEbscoApiKey', '', NULL, 'API key for EBSCO', 'Free'),
272
('ERMProviderEbscoApiKey', ''),
273
('ERMProviderEbscoCustomerID', '', NULL, 'Customer ID for EBSCO', 'Free'),
273
('ERMProviderEbscoCustomerID', ''),
274
('ERMProviders', 'local', 'local|ebsco', 'Set the providers for the ERM module', 'Choice'),
274
('ERMProviders', 'local'),
275
('ExcludeHolidaysFromMaxPickUpDelay', '0', NULL, 'If ON, reserves max pickup delay takes into accountthe closed days.', 'YesNo'),
275
('ExcludeHolidaysFromMaxPickUpDelay', '0'),
276
('expandedSearchOption','0',NULL,'If ON, set advanced search to be expanded by default','YesNo'),
276
('expandedSearchOption','0'),
277
('ExpireReservesAutoFill','0',NULL,'Automatically fill the next hold with a automatically canceled expired waiting hold.','YesNo'),
277
('ExpireReservesAutoFill','0'),
278
('ExpireReservesAutoFillEmail','', NULL,'Send email notification of hold filled from automatically expired/cancelled hold to this address. If not defined, Koha will fallback to the library reply-to address','Free'),
278
('ExpireReservesAutoFillEmail',''),
279
('ExpireReservesMaxPickUpDelay','0',NULL,'Enabling this allows holds to expire automatically if they have not been picked by within the time period specified in ReservesMaxPickUpDelay','YesNo'),
279
('ExpireReservesMaxPickUpDelay','0'),
280
('ExpireReservesMaxPickUpDelayCharge','0',NULL,'If ExpireReservesMaxPickUpDelay is enabled, and this field has a non-zero value, than a borrower whose waiting hold has expired will be charged this amount.','Free'),
280
('ExpireReservesMaxPickUpDelayCharge','0'),
281
('ExpireReservesOnHolidays', '1', NULL, 'If false, reserves at a library will not be canceled on days the library is not open.', 'YesNo'),
281
('ExpireReservesOnHolidays', '1'),
282
('ExportCircHistory', '0', NULL, 'Display the export circulation options', 'YesNo'),
282
('ExportCircHistory', '0'),
283
('ExportRemoveFields','',NULL,'List of fields for non export in circulation.pl (separated by a space)','Free'),
283
('ExportRemoveFields',''),
284
('ExtendedPatronAttributes','1',NULL,'Use extended patron IDs and attributes','YesNo'),
284
('ExtendedPatronAttributes','1'),
285
('FacetLabelTruncationLength','20',NULL,'Specify the facet max length in OPAC','Integer'),
285
('FacetLabelTruncationLength','20'),
286
('FacetMaxCount','20',NULL,'Specify the max facet count for each category','Integer'),
286
('FacetMaxCount','20'),
287
('FacetOrder','Alphabetical','Alphabetical|Usage|Stringwise','Specify the order of facets within each category','Choice'),
287
('FacetOrder','Alphabetical'),
288
('FacetSortingLocale','default',NULL,'Choose the locale for sorting facet names when FacetOrder is set to Alphabetical. This enables proper Unicode-aware sorting of accented characters and locale-specific alphabetical ordering.','Choice'),
288
('FacetSortingLocale','default'),
289
('FailedLoginAttempts','',NULL,'Number of login attempts before lockout the patron account','Integer'),
289
('FailedLoginAttempts',''),
290
('FallbackToSMSIfNoEmail', '0', NULL, 'Send messages by SMS if no patron email is defined', 'YesNo'),
290
('FallbackToSMSIfNoEmail', '0'),
291
('FeeOnChangePatronCategory','1',NULL,'If set, when a patron changes to a category with enrolment fee, a fee is charged','YesNo'),
291
('FeeOnChangePatronCategory','1'),
292
('FilterBeforeOverdueReport','0',NULL,'Do not run overdue report until filter selected','YesNo'),
292
('FilterBeforeOverdueReport','0'),
293
('FilterSearchResultsByLoggedInBranch','0',NULL,'Option to filter location column on staff search results by logged in branch','YesNo'),
293
('FilterSearchResultsByLoggedInBranch','0'),
294
('FineNotifyAtCheckin','0',NULL,'If ON notify librarians of overdue fines on the items they are checking in.','YesNo'),
294
('FineNotifyAtCheckin','0'),
295
('FinePaymentAutoPopup','0',NULL,'If enabled, automatically display a print dialog for a payment receipt when making a payment.','YesNo'),
295
('FinePaymentAutoPopup','0'),
296
('finesCalendar','noFinesWhenClosed','ignoreCalendar|noFinesWhenClosed','Specify whether to use the Calendar in calculating duedates and fines','Choice'),
296
('finesCalendar','noFinesWhenClosed'),
297
('FinesIncludeGracePeriod','1',NULL,'If enabled, fines calculations will include the grace period.','YesNo'),
297
('FinesIncludeGracePeriod','1'),
298
('FinesLog','1',NULL,'If ON, log fines','YesNo'),
298
('FinesLog','1'),
299
('finesMode','off','off|production','Choose the fines mode, \'off\' (no charges), \'production\' (accrue overdue fines).  Requires accruefines cronjob.','Choice'),
299
('finesMode','off'),
300
('ForceLibrarySelection','0',NULL,'Force staff to select a library when logging into the staff interface.','YesNo'),
300
('ForceLibrarySelection','0'),
301
('ForcePasswordResetWhenSetByStaff','0',NULL,'Force a staff created patron account to reset its password after its first OPAC login.','YesNo'),
301
('ForcePasswordResetWhenSetByStaff','0'),
302
('FRBRizeEditions','0',NULL,'If ON, Koha will query one or more ISBN web services for associated ISBNs and display an Editions tab on the details pages','YesNo'),
302
('FRBRizeEditions','0'),
303
('FutureHoldsBlockRenewals', '0', NULL, 'Allow future holds to block renewals', 'YesNo' ),
303
('FutureHoldsBlockRenewals', '0'),
304
('GenerateAuthorityField667', 'Machine generated authority record', NULL, 'When BiblioAddsAuthorities and AutoCreateAuthorities are enabled, use this as a default value for the 667$a field of MARC21 records', 'Free'),
304
('GenerateAuthorityField667', 'Machine generated authority record'),
305
('GenerateAuthorityField670', 'Work cat.', NULL, 'When BiblioAddsAuthorities and AutoCreateAuthorities are enabled, use this as a default value for the 670$a field of MARC21 records', 'Free'),
305
('GenerateAuthorityField670', 'Work cat.'),
306
('GoogleJackets','0',NULL,'if ON, displays jacket covers from Google Books API','YesNo'),
306
('GoogleJackets','0'),
307
('GoogleOAuth2ClientID', '', NULL, 'Client ID for the web app registered with Google', 'Free'),
307
('GoogleOAuth2ClientID', ''),
308
('GoogleOAuth2ClientSecret', '', NULL, 'Client Secret for the web app registered with Google', 'Free'),
308
('GoogleOAuth2ClientSecret', ''),
309
('GoogleOpenIDConnect', '0', NULL, 'if ON, allows the use of Google OpenID Connect for login', 'YesNo'),
309
('GoogleOpenIDConnect', '0'),
310
('GoogleOpenIDConnectAutoRegister', '0',NULL,' Google OpenID Connect logins to auto-register patrons.','YesNo'),
310
('GoogleOpenIDConnectAutoRegister', '0'),
311
('GoogleOpenIDConnectDefaultBranch', '',NULL,'This branch code will be used to create Google OpenID Connect patrons.','Textarea'),
311
('GoogleOpenIDConnectDefaultBranch', ''),
312
('GoogleOpenIDConnectDefaultCategory','',NULL,'This category code will be used to create Google OpenID Connect patrons.','Textarea'),
312
('GoogleOpenIDConnectDefaultCategory',''),
313
('GoogleOpenIDConnectDomain', '', NULL, 'Restrict Google OpenID Connect to this domain (or subdomains of this domain). Leave blank for all Google domains', 'Free'),
313
('GoogleOpenIDConnectDomain', ''),
314
('hidelostitems','0',NULL,'If ON, disables display of"lost" items in OPAC.','YesNo'),
314
('hide_marc','0'),
315
('HidePatronName','0',NULL,'If this is switched on, patron\'s cardnumber will be shown instead of their name on the holds and catalog screens','YesNo'),
315
('hidelostitems','0'),
316
('HidePersonalPatronDetailOnCirculation', '0', NULL, 'Hide patrons phone number, email address, street address and city in the circulation page','YesNo'),
316
('HidePatronName','0'),
317
('hide_marc','0',NULL,'If ON, disables display of MARC fields, subfield codes & indicators (still shows data)','YesNo'),
317
('HidePersonalPatronDetailOnCirculation', '0'),
318
('HoldCancellationRequestSIP','0',NULL,'Option to set holds cancelled via SIP as cancellation requests','YesNo'),
318
('HoldCancellationRequestSIP','0'),
319
('HoldFeeMode','not_always','any_time_is_placed|not_always|any_time_is_collected','Set the hold fee mode','Choice'),
319
('HoldFeeMode','not_always'),
320
('HoldRatioDefault','3',NULL,'Default value for the hold ratio report','Integer'),
320
('HoldRatioDefault','3'),
321
('HoldsAutoFill','0',NULL,'If on, librarian will not be asked if hold should be filled, it will be filled automatically','YesNo'),
321
('HoldsAutoFill','0'),
322
('HoldsAutoFillPrintSlip','0',NULL,'If on, hold slip print dialog will be displayed automatically','YesNo'),
322
('HoldsAutoFillPrintSlip','0'),
323
('HoldsLog','0',NULL,'If ON, log create/cancel/suspend/resume actions on holds.','YesNo'),
323
('HoldsLog','0'),
324
('HoldsNeedProcessingSIP', '0', NULL, 'Require staff to check-in before hold is set to waiting state', 'YesNo'),
324
('HoldsNeedProcessingSIP', '0'),
325
('HoldsQueueParallelLoopsCount', '1', NULL, 'Number of parallel loops to use when running the holds queue builder', 'Integer'),
325
('HoldsQueueParallelLoopsCount', '1'),
326
('HoldsQueuePrioritizeBranch','homebranch','holdingbranch|homebranch','Decides if holds queue builder patron home library match to home or holding branch','Choice'),
326
('HoldsQueuePrioritizeBranch','homebranch'),
327
('HoldsQueueSkipClosed', '0', NULL, 'If enabled, any libraries that are closed when the holds queue is built will be ignored for the purpose of filling holds.', 'YesNo'),
327
('HoldsQueueSkipClosed', '0'),
328
('HoldsSplitQueue','nothing','nothing|branch|itemtype|branch_itemtype','In the staff interface, split the holds view by the given criteria','Choice'),
328
('HoldsSplitQueue','nothing'),
329
('HoldsSplitQueueNumbering', 'actual', 'actual|virtual', 'If the holds queue is split, decide if the actual priorities should be displayed', 'Choice'),
329
('HoldsSplitQueueNumbering', 'actual'),
330
('HoldsToPullStartDate','2',NULL,'Set the default start date for the Holds to pull list to this many days ago','Integer'),
330
('HoldsToPullStartDate','2'),
331
('HomeOrHoldingBranch','holdingbranch','holdingbranch|homebranch','Used by Circulation to determine which branch of an item to check with independent branches on, and by search to determine which branch to choose for availability ','Choice'),
331
('HomeOrHoldingBranch','holdingbranch'),
332
('HouseboundModule','0',NULL,'If ON, enable housebound module functionality.','YesNo'),
332
('HouseboundModule','0'),
333
('HTML5MediaEnabled','not','not|opac|staff|both','Show a tab with a HTML5 media player for files catalogued in field 856','Choice'),
333
('HTML5MediaEnabled','not'),
334
('HTML5MediaExtensions','webm|ogg|ogv|oga|vtt',NULL,'Media file extensions','Free'),
334
('HTML5MediaExtensions','webm|ogg|ogv|oga|vtt'),
335
('HTML5MediaYouTube','0',NULL,'YouTube links as videos','YesNo'),
335
('HTML5MediaYouTube','0'),
336
('IdRef','0',NULL,'Disable/enable the IdRef webservice from the OPAC detail page.','YesNo'),
336
('IdRef','0'),
337
('ILLCheckAvailability', '0', NULL, 'If ON, during the ILL request process third party sources will be checked for current availability', 'YesNo'),
337
('ILLCheckAvailability', '0'),
338
('ILLDefaultStaffEmail', '', NULL, 'Fallback email address for staff ILL notices to be sent to in the absence of a branch address', 'Free'),
338
('ILLDefaultStaffEmail', ''),
339
('ILLHiddenRequestStatuses', '', NULL, 'ILL statuses that are considered finished and should not be displayed in the ILL module', 'multiple'),
339
('ILLHiddenRequestStatuses', ''),
340
('ILLHistoryCheck', '0', NULL, 'If ON, a verification is performed to check if the ILL request has previously been placed by the same patron. Verification is done using one of the following identifier fields: DOI, Pubmed ID or ISBN', 'YesNo'),
340
('ILLHistoryCheck', '0'),
341
('IllLog', '0', NULL, 'If ON, log information about ILL requests', 'YesNo'),
341
('IllLog', '0'),
342
('ILLModule','0',NULL,'If ON, enables the interlibrary loans module.','YesNo'),
342
('ILLModule','0'),
343
('ILLModuleDisclaimerByType','',NULL,'YAML defining disclaimer settings for each ILL request type','Textarea'),
343
('ILLModuleDisclaimerByType',''),
344
('ILLModuleUnmediated','0',NULL,'If enabled, try to immediately progress newly placed ILL requests.','YesNo'),
344
('ILLModuleUnmediated','0'),
345
('ILLOpacbackends','',NULL,'ILL backends to enabled for OPAC initiated requests','multiple'),
345
('ILLOpacbackends',''),
346
('ILLOpacUnauthenticatedRequest','0',NULL,'Can OPAC users place ILL requests without having to be logged in','YesNo'),
346
('ILLOpacUnauthenticatedRequest','0'),
347
('ILLPartnerCode','IL',NULL,'Patrons from this patron category will be used as partners to place ILL requests with','Free'),
347
('ILLPartnerCode','IL'),
348
('ILLRequestsTabs','',NULL,'Add customizable tabs to interlibrary loan requests list','Textarea'),
348
('ILLRequestsTabs',''),
349
('ILLSendStaffNotices', '', NULL, 'Send these ILL notices to staff', 'multiple'),
349
('ILLSendStaffNotices', ''),
350
('ILS-DI','0',NULL,'Enables ILS-DI services at OPAC.','YesNo'),
350
('ILS-DI','0'),
351
('ILS-DI:AuthorizedIPs','',NULL,'Restricts usage of ILS-DI to some IPs','Free'),
351
('ILS-DI:AuthorizedIPs',''),
352
('ImageLimit','5',NULL,'Limit images stored in the database by the Patron Card image manager to this number.','Integer'),
352
('ImageLimit','5'),
353
('IncludeSeeAlsoFromInSearches','0',NULL,'Include see-also-from references in searches.','YesNo'),
353
('IncludeSeeAlsoFromInSearches','0'),
354
('IncludeSeeFromInSearches','0',NULL,'Include see-from references in searches.','YesNo'),
354
('IncludeSeeFromInSearches','0'),
355
('IndependentBranches','0',NULL,'If ON, increases security between libraries','YesNo'),
355
('IndependentBranches','0'),
356
('IndependentBranchesPatronModifications','0', NULL, 'Show only modification request for the logged in branch','YesNo'),
356
('IndependentBranchesPatronModifications','0'),
357
('IndependentBranchesTransfers','0', NULL, 'Allow non-superlibrarians to transfer items between libraries','YesNo'),
357
('IndependentBranchesTransfers','0'),
358
('IntranetAddMastheadLibraryPulldown','0', NULL, 'Add a library select pulldown menu on the staff header search','YesNo'),
358
('intranet_includes','includes'),
359
('IntranetBiblioDefaultView','normal','normal|marc|isbd|labeled_marc','Choose the default detail view in the staff interface; choose between normal, labeled_marc, marc or isbd','Choice'),
359
('IntranetAddMastheadLibraryPulldown','0'),
360
('intranetbookbag','1',NULL,'If ON, enables display of Cart feature in the intranet','YesNo'),
360
('IntranetBiblioDefaultView','normal'),
361
('IntranetCatalogSearchPulldown','0', NULL, 'Show a search field pulldown for "Search the catalog" boxes','YesNo'),
361
('intranetbookbag','1'),
362
('IntranetCirculationHomeHTML', '', NULL, 'Show the following HTML in a div on the bottom of the reports home page', 'Free'),
362
('IntranetCatalogSearchPulldown','0'),
363
('IntranetCoce','0', NULL, 'If on, enables cover retrieval from the configured Coce server in the staff interface', 'YesNo'),
363
('IntranetCirculationHomeHTML', ''),
364
('intranetcolorstylesheet','',NULL,'Define the color stylesheet to use in the staff interface','Free'),
364
('IntranetCoce','0'),
365
('IntranetFavicon','',NULL,'Enter a complete URL to an image to replace the default Koha favicon on the staff interface','Free'),
365
('intranetcolorstylesheet',''),
366
('IntranetNav','','70|10','Use HTML tabs to add navigational links to the top-hand navigational bar in the staff interface','Textarea'),
366
('IntranetFavicon',''),
367
('IntranetNumbersPreferPhrase','0',NULL,'Control the use of phr operator in callnumber and standard number staff interface searches','YesNo'),
367
('IntranetNav',''),
368
('intranetreadinghistory','1',NULL,'If ON, Checkout history is enabled for all patrons','YesNo'),
368
('IntranetNumbersPreferPhrase','0'),
369
('IntranetReadingHistoryHolds', '1', NULL, 'If ON, Holds history is enabled for all patrons','YesNo'),
369
('intranetreadinghistory','1'),
370
('IntranetSlipPrinterJS','',NULL,'Use this JavaScript for printing slips. Define at least function printThenClose(). For use e.g. with Firefox PlugIn jsPrintSetup, see http://jsprintsetup.mozdev.org/','Free'),
370
('IntranetReadingHistoryHolds', '1'),
371
('intranetstylesheet','',NULL,'Enter a complete URL to use an alternate layout stylesheet in Intranet','Free'),
371
('IntranetSlipPrinterJS',''),
372
('IntranetUserCSS','',NULL,'Add CSS to be included in the intranet in an embedded <style> tag.','Free'),
372
('intranetstylesheet',''),
373
('IntranetUserJS','','70|10','Custom javascript for inclusion in Intranet','Textarea'),
373
('IntranetUserCSS',''),
374
('intranet_includes','includes',NULL,'The includes directory you want for specific look of Koha (includes or includes_npl for example)','Free'),
374
('IntranetUserJS',''),
375
('ISBD','#100||{ 100a }{ 100b }{ 100c }{ 100d }{ 110a }{ 110b }{ 110c }{ 110d }{ 110e }{ 110f }{ 110g }{ 130a }{ 130d }{ 130f }{ 130g }{ 130h }{ 130k }{ 130l }{ 130m }{ 130n }{ 130o }{ 130p }{ 130r }{ 130s }{ 130t }|<br/><br/>\r\n#245||{ 245a }{ 245b }{245f }{ 245g }{ 245k }{ 245n }{ 245p }{ 245s }{ 245h }|\r\n#246||{ : 246i }{ 246a }{ 246b }{ 246f }{ 246g }{ 246n }{ 246p }{ 246h }|\r\n#242||{ = 242a }{ 242b }{ 242n }{ 242p }{ 242h }|\r\n#245||{ 245c }|\r\n#242||{ = 242c }|\r\n#250| - |{ 250a }{ 250b }|\r\n#254|, |{ 254a }|\r\n#255|, |{ 255a }{ 255b }{ 255c }{ 255d }{ 255e }{ 255f }{ 255g }|\r\n#256|, |{ 256a }|\r\n#257|, |{ 257a }|\r\n#258|, |{ 258a }{ 258b }|\r\n#260| - |{ 260a }{ 260b }{ 260c }|\r\n#300| - |{ 300a }{ 300b }{ 300c }{ 300d }{ 300e }{ 300f }{ 300g }|\r\n#306| - |{ 306a }|\r\n#307| - |{ 307a }{ 307b }|\r\n#310| - |{ 310a }{ 310b }|\r\n#321| - |{ 321a }{ 321b }|\r\n#340| - |{ 3403 }{ 340a }{ 340b }{ 340c }{ 340d }{ 340e }{ 340f }{ 340h }{ 340i }|\r\n#342| - |{ 342a }{ 342b }{ 342c }{ 342d }{ 342e }{ 342f }{ 342g }{ 342h }{ 342i }{ 342j }{ 342k }{ 342l }{ 342m }{ 342n }{ 342o }{ 342p }{ 342q }{ 342r }{ 342s }{ 342t }{ 342u }{ 342v }{ 342w }|\r\n#343| - |{ 343a }{ 343b }{ 343c }{ 343d }{ 343e }{ 343f }{ 343g }{ 343h }{ 343i }|\r\n#351| - |{ 3513 }{ 351a }{ 351b }{ 351c }|\r\n#352| - |{ 352a }{ 352b }{ 352c }{ 352d }{ 352e }{ 352f }{ 352g }{ 352i }{ 352q }|\r\n#362| - |{ 362a }{ 351z }|\r\n#440| - |{ 440a }{ 440n }{ 440p }{ 440v }{ 440x }|.\r\n#490| - |{ 490a }{ 490v }{ 490x }|.\r\n#800| - |{ 800a }{ 800b }{ 800c }{ 800d }{ 800e }{ 800f }{ 800g }{ 800h }{ 800j }{ 800k }{ 800l }{ 800m }{ 800n }{ 800o }{ 800p }{ 800q }{ 800r }{ 800s }{ 800t }{ 800u }{ 800v }|.\r\n#810| - |{ 810a }{ 810b }{ 810c }{ 810d }{ 810e }{ 810f }{ 810g }{ 810h }{ 810k }{ 810l }{ 810m }{ 810n }{ 810o }{ 810p }{ 810r }{ 810s }{ 810t }{ 810u }{ 810v }|.\r\n#811| - |{ 811a }{ 811c }{ 811d }{ 811e }{ 811f }{ 811g }{ 811h }{ 811k }{ 811l }{ 811n }{ 811p }{ 811q }{ 811s }{ 811t }{ 811u }{ 811v }|.\r\n#830| - |{ 830a }{ 830d }{ 830f }{ 830g }{ 830h }{ 830k }{ 830l }{ 830m }{ 830n }{ 830o }{ 830p }{ 830r }{ 830s }{ 830t }{ 830v }|.\r\n#500|<br/><br/>|{ 5003 }{ 500a }|\r\n#501|<br/><br/>|{ 501a }|\r\n#502|<br/><br/>|{ 502a }|\r\n#504|<br/><br/>|{ 504a }|\r\n#505|<br/><br/>|{ 505a }{ 505t }{ 505r }{ 505g }{ 505u }|\r\n#506|<br/><br/>|{ 5063 }{ 506a }{ 506b }{ 506c }{ 506d }{ 506u }|\r\n#507|<br/><br/>|{ 507a }{ 507b }|\r\n#508|<br/><br/>|{ 508a }{ 508a }|\r\n#510|<br/><br/>|{ 5103 }{ 510a }{ 510x }{ 510c }{ 510b }|\r\n#511|<br/><br/>|{ 511a }|\r\n#513|<br/><br/>|{ 513a }{513b }|\r\n#514|<br/><br/>|{ 514z }{ 514a }{ 514b }{ 514c }{ 514d }{ 514e }{ 514f }{ 514g }{ 514h }{ 514i }{ 514j }{ 514k }{ 514m }{ 514u }|\r\n#515|<br/><br/>|{ 515a }|\r\n#516|<br/><br/>|{ 516a }|\r\n#518|<br/><br/>|{ 5183 }{ 518a }|\r\n#520|<br/><br/>|{ 5203 }{ 520a }{ 520b }{ 520u }|\r\n#521|<br/><br/>|{ 5213 }{ 521a }{ 521b }|\r\n#522|<br/><br/>|{ 522a }|\r\n#524|<br/><br/>|{ 524a }|\r\n#525|<br/><br/>|{ 525a }|\r\n#526|<br/><br/>|{\\n510i }{\\n510a }{ 510b }{ 510c }{ 510d }{\\n510x }|\r\n#530|<br/><br/>|{\\n5063 }{\\n506a }{ 506b }{ 506c }{ 506d }{\\n506u }|\r\n#533|<br/><br/>|{\\n5333 }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }|\r\n#534|<br/><br/>|{\\n533p }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }{\\n533t }{\\n533x }{\\n533z }|\r\n#535|<br/><br/>|{\\n5353 }{\\n535a }{\\n535b }{\\n535c }{\\n535d }|\r\n#538|<br/><br/>|{\\n5383 }{\\n538a }{\\n538i }{\\n538u }|\r\n#540|<br/><br/>|{\\n5403 }{\\n540a }{ 540b }{ 540c }{ 540d }{\\n520u }|\r\n#544|<br/><br/>|{\\n5443 }{\\n544a }{\\n544b }{\\n544c }{\\n544d }{\\n544e }{\\n544n }|\r\n#545|<br/><br/>|{\\n545a }{ 545b }{\\n545u }|\r\n#546|<br/><br/>|{\\n5463 }{\\n546a }{ 546b }|\r\n#547|<br/><br/>|{\\n547a }|\r\n#550|<br/><br/>|{ 550a }|\r\n#552|<br/><br/>|{ 552z }{ 552a }{ 552b }{ 552c }{ 552d }{ 552e }{ 552f }{ 552g }{ 552h }{ 552i }{ 552j }{ 552k }{ 552l }{ 552m }{ 552n }{ 562o }{ 552p }{ 552u }|\r\n#555|<br/><br/>|{ 5553 }{ 555a }{ 555b }{ 555c }{ 555d }{ 555u }|\r\n#556|<br/><br/>|{ 556a }{ 506z }|\r\n#563|<br/><br/>|{ 5633 }{ 563a }{ 563u }|\r\n#565|<br/><br/>|{ 5653 }{ 565a }{ 565b }{ 565c }{ 565d }{ 565e }|\r\n#567|<br/><br/>|{ 567a }|\r\n#580|<br/><br/>|{ 580a }|\r\n#581|<br/><br/>|{ 5633 }{ 581a }{ 581z }|\r\n#584|<br/><br/>|{ 5843 }{ 584a }{ 584b }|\r\n#585|<br/><br/>|{ 5853 }{ 585a }|\r\n#586|<br/><br/>|{ 5863 }{ 586a }|\r\n#020|<br/><br/><label>ISBN: </label>|{ 020a }{ 020c }|\r\n#022|<br/><br/><label>ISSN: </label>|{ 022a }|\r\n#222| = |{ 222a }{ 222b }|\r\n#210| = |{ 210a }{ 210b }|\r\n#024|<br/><br/><label>Standard No.: </label>|{ 024a }{ 024c }{ 024d }{ 0242 }|\r\n#027|<br/><br/><label>Standard Tech. Report. No.: </label>|{ 027a }|\r\n#028|<br/><br/><label>Publisher. No.: </label>|{ 028a }{ 028b }|\r\n#013|<br/><br/><label>Patent No.: </label>|{ 013a }{ 013b }{ 013c }{ 013d }{ 013e }{ 013f }|\r\n#030|<br/><br/><label>CODEN: </label>|{ 030a }|\r\n#037|<br/><br/><label>Source: </label>|{ 037a }{ 037b }{ 037c }{ 037f }{ 037g }{ 037n }|\r\n#010|<br/><br/><label>LCCN: </label>|{ 010a }|\r\n#015|<br/><br/><label>Nat. Bib. No.: </label>|{ 015a }{ 0152 }|\r\n#016|<br/><br/><label>Nat. Bib. Agency Control No.: </label>|{ 016a }{ 0162 }|\r\n#600|<br/><br/><label>Subjects--Personal Names: </label>|{\\n6003 }{\\n600a}{ 600b }{ 600c }{ 600d }{ 600e }{ 600f }{ 600g }{ 600h }{--600k}{ 600l }{ 600m }{ 600n }{ 600o }{--600p}{ 600r }{ 600s }{ 600t }{ 600u }{--600x}{--600z}{--600y}{--600v}|\r\n#610|<br/><br/><label>Subjects--Corporate Names: </label>|{\\n6103 }{\\n610a}{ 610b }{ 610c }{ 610d }{ 610e }{ 610f }{ 610g }{ 610h }{--610k}{ 610l }{ 610m }{ 610n }{ 610o }{--610p}{ 610r }{ 610s }{ 610t }{ 610u }{--610x}{--610z}{--610y}{--610v}|\r\n#611|<br/><br/><label>Subjects--Meeting Names: </label>|{\\n6113 }{\\n611a}{ 611b }{ 611c }{ 611d }{ 611e }{ 611f }{ 611g }{ 611h }{--611k}{ 611l }{ 611m }{ 611n }{ 611o }{--611p}{ 611r }{ 611s }{ 611t }{ 611u }{--611x}{--611z}{--611y}{--611v}|\r\n#630|<br/><br/><label>Subjects--Uniform Titles: </label>|{\\n630a}{ 630b }{ 630c }{ 630d }{ 630e }{ 630f }{ 630g }{ 630h }{--630k }{ 630l }{ 630m }{ 630n }{ 630o }{--630p}{ 630r }{ 630s }{ 630t }{--630x}{--630z}{--630y}{--630v}|\r\n#648|<br/><br/><label>Subjects--Chronological Terms: </label>|{\\n6483 }{\\n648a }{--648x}{--648z}{--648y}{--648v}|\r\n#650|<br/><br/><label>Subjects--Topical Terms: </label>|{\\n6503 }{\\n650a}{ 650b }{ 650c }{ 650d }{ 650e }{--650x}{--650z}{--650y}{--650v}|\r\n#651|<br/><br/><label>Subjects--Geographic Terms: </label>|{\\n6513 }{\\n651a}{ 651b }{ 651c }{ 651d }{ 651e }{--651x}{--651z}{--651y}{--651v}|\r\n#653|<br/><br/><label>Subjects--Index Terms: </label>|{ 653a }|\r\n#654|<br/><br/><label>Subjects--Facted Index Terms: </label>|{\\n6543 }{\\n654a}{--654b}{--654x}{--654z}{--654y}{--654v}|\r\n#655|<br/><br/><label>Index Terms--Genre/Form: </label>|{\\n6553 }{\\n655a}{--655b}{--655x }{--655z}{--655y}{--655v}|\r\n#656|<br/><br/><label>Index Terms--Occupation: </label>|{\\n6563 }{\\n656a}{--656k}{--656x}{--656z}{--656y}{--656v}|\r\n#657|<br/><br/><label>Index Terms--Function: </label>|{\\n6573 }{\\n657a}{--657x}{--657z}{--657y}{--657v}|\r\n#658|<br/><br/><label>Index Terms--Curriculum Objective: </label>|{\\n658a}{--658b}{--658c}{--658d}{--658v}|\r\n#050|<br/><br/><label>LC Class. No.: </label>|{ 050a }{ / 050b }|\r\n#082|<br/><br/><label>Dewey Class. No.: </label>|{ 082a }{ / 082b }|\r\n#080|<br/><br/><label>Universal Decimal Class. No.: </label>|{ 080a }{ 080x }{ / 080b }|\r\n#070|<br/><br/><label>National Agricultural Library Call No.: </label>|{ 070a }{ / 070b }|\r\n#060|<br/><br/><label>National Library of Medicine Call No.: </label>|{ 060a }{ / 060b }|\r\n#074|<br/><br/><label>GPO Item No.: </label>|{ 074a }|\r\n#086|<br/><br/><label>Gov. Doc. Class. No.: </label>|{ 086a }|\r\n#088|<br/><br/><label>Report. No.: </label>|{ 088a }|','70|10','ISBD','Textarea'),
375
('ISBD','#100||{ 100a }{ 100b }{ 100c }{ 100d }{ 110a }{ 110b }{ 110c }{ 110d }{ 110e }{ 110f }{ 110g }{ 130a }{ 130d }{ 130f }{ 130g }{ 130h }{ 130k }{ 130l }{ 130m }{ 130n }{ 130o }{ 130p }{ 130r }{ 130s }{ 130t }|<br/><br/>\r\n#245||{ 245a }{ 245b }{245f }{ 245g }{ 245k }{ 245n }{ 245p }{ 245s }{ 245h }|\r\n#246||{ : 246i }{ 246a }{ 246b }{ 246f }{ 246g }{ 246n }{ 246p }{ 246h }|\r\n#242||{ = 242a }{ 242b }{ 242n }{ 242p }{ 242h }|\r\n#245||{ 245c }|\r\n#242||{ = 242c }|\r\n#250| - |{ 250a }{ 250b }|\r\n#254|, |{ 254a }|\r\n#255|, |{ 255a }{ 255b }{ 255c }{ 255d }{ 255e }{ 255f }{ 255g }|\r\n#256|, |{ 256a }|\r\n#257|, |{ 257a }|\r\n#258|, |{ 258a }{ 258b }|\r\n#260| - |{ 260a }{ 260b }{ 260c }|\r\n#300| - |{ 300a }{ 300b }{ 300c }{ 300d }{ 300e }{ 300f }{ 300g }|\r\n#306| - |{ 306a }|\r\n#307| - |{ 307a }{ 307b }|\r\n#310| - |{ 310a }{ 310b }|\r\n#321| - |{ 321a }{ 321b }|\r\n#340| - |{ 3403 }{ 340a }{ 340b }{ 340c }{ 340d }{ 340e }{ 340f }{ 340h }{ 340i }|\r\n#342| - |{ 342a }{ 342b }{ 342c }{ 342d }{ 342e }{ 342f }{ 342g }{ 342h }{ 342i }{ 342j }{ 342k }{ 342l }{ 342m }{ 342n }{ 342o }{ 342p }{ 342q }{ 342r }{ 342s }{ 342t }{ 342u }{ 342v }{ 342w }|\r\n#343| - |{ 343a }{ 343b }{ 343c }{ 343d }{ 343e }{ 343f }{ 343g }{ 343h }{ 343i }|\r\n#351| - |{ 3513 }{ 351a }{ 351b }{ 351c }|\r\n#352| - |{ 352a }{ 352b }{ 352c }{ 352d }{ 352e }{ 352f }{ 352g }{ 352i }{ 352q }|\r\n#362| - |{ 362a }{ 351z }|\r\n#440| - |{ 440a }{ 440n }{ 440p }{ 440v }{ 440x }|.\r\n#490| - |{ 490a }{ 490v }{ 490x }|.\r\n#800| - |{ 800a }{ 800b }{ 800c }{ 800d }{ 800e }{ 800f }{ 800g }{ 800h }{ 800j }{ 800k }{ 800l }{ 800m }{ 800n }{ 800o }{ 800p }{ 800q }{ 800r }{ 800s }{ 800t }{ 800u }{ 800v }|.\r\n#810| - |{ 810a }{ 810b }{ 810c }{ 810d }{ 810e }{ 810f }{ 810g }{ 810h }{ 810k }{ 810l }{ 810m }{ 810n }{ 810o }{ 810p }{ 810r }{ 810s }{ 810t }{ 810u }{ 810v }|.\r\n#811| - |{ 811a }{ 811c }{ 811d }{ 811e }{ 811f }{ 811g }{ 811h }{ 811k }{ 811l }{ 811n }{ 811p }{ 811q }{ 811s }{ 811t }{ 811u }{ 811v }|.\r\n#830| - |{ 830a }{ 830d }{ 830f }{ 830g }{ 830h }{ 830k }{ 830l }{ 830m }{ 830n }{ 830o }{ 830p }{ 830r }{ 830s }{ 830t }{ 830v }|.\r\n#500|<br/><br/>|{ 5003 }{ 500a }|\r\n#501|<br/><br/>|{ 501a }|\r\n#502|<br/><br/>|{ 502a }|\r\n#504|<br/><br/>|{ 504a }|\r\n#505|<br/><br/>|{ 505a }{ 505t }{ 505r }{ 505g }{ 505u }|\r\n#506|<br/><br/>|{ 5063 }{ 506a }{ 506b }{ 506c }{ 506d }{ 506u }|\r\n#507|<br/><br/>|{ 507a }{ 507b }|\r\n#508|<br/><br/>|{ 508a }{ 508a }|\r\n#510|<br/><br/>|{ 5103 }{ 510a }{ 510x }{ 510c }{ 510b }|\r\n#511|<br/><br/>|{ 511a }|\r\n#513|<br/><br/>|{ 513a }{513b }|\r\n#514|<br/><br/>|{ 514z }{ 514a }{ 514b }{ 514c }{ 514d }{ 514e }{ 514f }{ 514g }{ 514h }{ 514i }{ 514j }{ 514k }{ 514m }{ 514u }|\r\n#515|<br/><br/>|{ 515a }|\r\n#516|<br/><br/>|{ 516a }|\r\n#518|<br/><br/>|{ 5183 }{ 518a }|\r\n#520|<br/><br/>|{ 5203 }{ 520a }{ 520b }{ 520u }|\r\n#521|<br/><br/>|{ 5213 }{ 521a }{ 521b }|\r\n#522|<br/><br/>|{ 522a }|\r\n#524|<br/><br/>|{ 524a }|\r\n#525|<br/><br/>|{ 525a }|\r\n#526|<br/><br/>|{\\n510i }{\\n510a }{ 510b }{ 510c }{ 510d }{\\n510x }|\r\n#530|<br/><br/>|{\\n5063 }{\\n506a }{ 506b }{ 506c }{ 506d }{\\n506u }|\r\n#533|<br/><br/>|{\\n5333 }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }|\r\n#534|<br/><br/>|{\\n533p }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }{\\n533t }{\\n533x }{\\n533z }|\r\n#535|<br/><br/>|{\\n5353 }{\\n535a }{\\n535b }{\\n535c }{\\n535d }|\r\n#538|<br/><br/>|{\\n5383 }{\\n538a }{\\n538i }{\\n538u }|\r\n#540|<br/><br/>|{\\n5403 }{\\n540a }{ 540b }{ 540c }{ 540d }{\\n520u }|\r\n#544|<br/><br/>|{\\n5443 }{\\n544a }{\\n544b }{\\n544c }{\\n544d }{\\n544e }{\\n544n }|\r\n#545|<br/><br/>|{\\n545a }{ 545b }{\\n545u }|\r\n#546|<br/><br/>|{\\n5463 }{\\n546a }{ 546b }|\r\n#547|<br/><br/>|{\\n547a }|\r\n#550|<br/><br/>|{ 550a }|\r\n#552|<br/><br/>|{ 552z }{ 552a }{ 552b }{ 552c }{ 552d }{ 552e }{ 552f }{ 552g }{ 552h }{ 552i }{ 552j }{ 552k }{ 552l }{ 552m }{ 552n }{ 562o }{ 552p }{ 552u }|\r\n#555|<br/><br/>|{ 5553 }{ 555a }{ 555b }{ 555c }{ 555d }{ 555u }|\r\n#556|<br/><br/>|{ 556a }{ 506z }|\r\n#563|<br/><br/>|{ 5633 }{ 563a }{ 563u }|\r\n#565|<br/><br/>|{ 5653 }{ 565a }{ 565b }{ 565c }{ 565d }{ 565e }|\r\n#567|<br/><br/>|{ 567a }|\r\n#580|<br/><br/>|{ 580a }|\r\n#581|<br/><br/>|{ 5633 }{ 581a }{ 581z }|\r\n#584|<br/><br/>|{ 5843 }{ 584a }{ 584b }|\r\n#585|<br/><br/>|{ 5853 }{ 585a }|\r\n#586|<br/><br/>|{ 5863 }{ 586a }|\r\n#020|<br/><br/><label>ISBN: </label>|{ 020a }{ 020c }|\r\n#022|<br/><br/><label>ISSN: </label>|{ 022a }|\r\n#222| = |{ 222a }{ 222b }|\r\n#210| = |{ 210a }{ 210b }|\r\n#024|<br/><br/><label>Standard No.: </label>|{ 024a }{ 024c }{ 024d }{ 0242 }|\r\n#027|<br/><br/><label>Standard Tech. Report. No.: </label>|{ 027a }|\r\n#028|<br/><br/><label>Publisher. No.: </label>|{ 028a }{ 028b }|\r\n#013|<br/><br/><label>Patent No.: </label>|{ 013a }{ 013b }{ 013c }{ 013d }{ 013e }{ 013f }|\r\n#030|<br/><br/><label>CODEN: </label>|{ 030a }|\r\n#037|<br/><br/><label>Source: </label>|{ 037a }{ 037b }{ 037c }{ 037f }{ 037g }{ 037n }|\r\n#010|<br/><br/><label>LCCN: </label>|{ 010a }|\r\n#015|<br/><br/><label>Nat. Bib. No.: </label>|{ 015a }{ 0152 }|\r\n#016|<br/><br/><label>Nat. Bib. Agency Control No.: </label>|{ 016a }{ 0162 }|\r\n#600|<br/><br/><label>Subjects--Personal Names: </label>|{\\n6003 }{\\n600a}{ 600b }{ 600c }{ 600d }{ 600e }{ 600f }{ 600g }{ 600h }{--600k}{ 600l }{ 600m }{ 600n }{ 600o }{--600p}{ 600r }{ 600s }{ 600t }{ 600u }{--600x}{--600z}{--600y}{--600v}|\r\n#610|<br/><br/><label>Subjects--Corporate Names: </label>|{\\n6103 }{\\n610a}{ 610b }{ 610c }{ 610d }{ 610e }{ 610f }{ 610g }{ 610h }{--610k}{ 610l }{ 610m }{ 610n }{ 610o }{--610p}{ 610r }{ 610s }{ 610t }{ 610u }{--610x}{--610z}{--610y}{--610v}|\r\n#611|<br/><br/><label>Subjects--Meeting Names: </label>|{\\n6113 }{\\n611a}{ 611b }{ 611c }{ 611d }{ 611e }{ 611f }{ 611g }{ 611h }{--611k}{ 611l }{ 611m }{ 611n }{ 611o }{--611p}{ 611r }{ 611s }{ 611t }{ 611u }{--611x}{--611z}{--611y}{--611v}|\r\n#630|<br/><br/><label>Subjects--Uniform Titles: </label>|{\\n630a}{ 630b }{ 630c }{ 630d }{ 630e }{ 630f }{ 630g }{ 630h }{--630k }{ 630l }{ 630m }{ 630n }{ 630o }{--630p}{ 630r }{ 630s }{ 630t }{--630x}{--630z}{--630y}{--630v}|\r\n#648|<br/><br/><label>Subjects--Chronological Terms: </label>|{\\n6483 }{\\n648a }{--648x}{--648z}{--648y}{--648v}|\r\n#650|<br/><br/><label>Subjects--Topical Terms: </label>|{\\n6503 }{\\n650a}{ 650b }{ 650c }{ 650d }{ 650e }{--650x}{--650z}{--650y}{--650v}|\r\n#651|<br/><br/><label>Subjects--Geographic Terms: </label>|{\\n6513 }{\\n651a}{ 651b }{ 651c }{ 651d }{ 651e }{--651x}{--651z}{--651y}{--651v}|\r\n#653|<br/><br/><label>Subjects--Index Terms: </label>|{ 653a }|\r\n#654|<br/><br/><label>Subjects--Facted Index Terms: </label>|{\\n6543 }{\\n654a}{--654b}{--654x}{--654z}{--654y}{--654v}|\r\n#655|<br/><br/><label>Index Terms--Genre/Form: </label>|{\\n6553 }{\\n655a}{--655b}{--655x }{--655z}{--655y}{--655v}|\r\n#656|<br/><br/><label>Index Terms--Occupation: </label>|{\\n6563 }{\\n656a}{--656k}{--656x}{--656z}{--656y}{--656v}|\r\n#657|<br/><br/><label>Index Terms--Function: </label>|{\\n6573 }{\\n657a}{--657x}{--657z}{--657y}{--657v}|\r\n#658|<br/><br/><label>Index Terms--Curriculum Objective: </label>|{\\n658a}{--658b}{--658c}{--658d}{--658v}|\r\n#050|<br/><br/><label>LC Class. No.: </label>|{ 050a }{ / 050b }|\r\n#082|<br/><br/><label>Dewey Class. No.: </label>|{ 082a }{ / 082b }|\r\n#080|<br/><br/><label>Universal Decimal Class. No.: </label>|{ 080a }{ 080x }{ / 080b }|\r\n#070|<br/><br/><label>National Agricultural Library Call No.: </label>|{ 070a }{ / 070b }|\r\n#060|<br/><br/><label>National Library of Medicine Call No.: </label>|{ 060a }{ / 060b }|\r\n#074|<br/><br/><label>GPO Item No.: </label>|{ 074a }|\r\n#086|<br/><br/><label>Gov. Doc. Class. No.: </label>|{ 086a }|\r\n#088|<br/><br/><label>Report. No.: </label>|{ 088a }|'),
376
('IssueLog','1',NULL,'If ON, log checkout activity','YesNo'),
376
('IssueLog','1'),
377
('IssueLostItem','alert','Defines what should be done when an attempt is made to issue an item that has been marked as lost.','alert|confirm|nothing','Choice'),
377
('IssueLostItem','alert'),
378
('IssuingInProcess','0',NULL,'If ON, disables fines if the patron is issuing item that accumulate debt','YesNo'),
378
('IssuingInProcess','0'),
379
('item-level_itypes','1',NULL,'If ON, enables Item-level Itemtype / Issuing Rules','YesNo'),
379
('item-level_itypes','1'),
380
('itemBarcodeFallbackSearch','0',NULL,'If set, uses scanned item barcodes as a catalogue search if not found as barcodes','YesNo'),
380
('itemBarcodeFallbackSearch','0'),
381
('itemBarcodeInputFilter','','whitespace|T-prefix|cuecat|libsuite8|EAN13','If set, allows specification of a item barcode input filter','Choice'),
381
('itemBarcodeInputFilter',''),
382
('itemcallnumber','',NULL,'The MARC field/subfield that is used to calculate the itemcallnumber (Dewey would be 082ab or 092ab; LOC would be 050ab or 090ab) could be 852hi from an item record','Free'),
382
('itemcallnumber',''),
383
('ItemsDeniedRenewal','',NULL,'This syspref allows to define custom rules for denying renewal of specific items.','Textarea'),
383
('ItemsDeniedRenewal',''),
384
('JobsNotificationMethod','STOMP','polling|STOMP','Define the preferred job worker notification method','Choice'),
384
('JobsNotificationMethod','STOMP'),
385
('KohaAdminEmailAddress','root@localhost',NULL,'Define the email address where patron modification requests are sent','Free'),
385
('KohaAdminEmailAddress','root@localhost'),
386
('KohaManualBaseURL','https://koha-community.org/manual/',NULL,'Where is the Koha manual/documentation located?','Free'),
386
('KohaManualBaseURL','https://koha-community.org/manual/'),
387
('KohaManualLanguage','en','el|en|ar|cs|de|es|fr|it|pt_BR|tr|zh_TW','What is the language of the online manual you want to use?','Choice'),
387
('KohaManualLanguage','en'),
388
('LabelMARCView','standard','standard|economical','Define how a MARC record will display','Choice'),
388
('LabelMARCView','standard'),
389
('LanguageToUseOnMerge','',NULL,'If set, the authority field having the given language code in its $7 subfield will be used in the bibliographic record if it exists, rather than the first field. The code can be in a short, 2 characters long form (example: ba for latin) or in a long, 8 characters long form, with the short form in position 5 and 6 starting from 1 (example: ba0yba0y for latin). A list of available codes can be found here: https://documentation.abes.fr/sudoc/formats/unmb/DonneesCodees/CodesZone104.htm#$d. Please note that this feature is available only for UNIMARC.','Free'),
389
('LanguageToUseOnMerge',''),
390
('LibraryName','',NULL,'Define the library name as displayed on the OPAC',''),
390
('LibraryName',''),
391
('LibraryThingForLibrariesEnabled','0',NULL,'Enable or Disable Library Thing for Libraries Features','YesNo'),
391
('LibraryThingForLibrariesEnabled','0'),
392
('LibraryThingForLibrariesID','',NULL,'See:http://librarything.com/forlibraries/','Free'),
392
('LibraryThingForLibrariesID',''),
393
('LibraryThingForLibrariesTabbedView','0',NULL,'Put LibraryThingForLibraries Content in Tabs.','YesNo'),
393
('LibraryThingForLibrariesTabbedView','0'),
394
('LibrisKey', '', NULL, 'This key must be obtained at http://api.libris.kb.se/. It is unique for the IP of the server.', 'Free'),
394
('LibrisKey', ''),
395
('LibrisURL', 'http://api.libris.kb.se/bibspell/', NULL, 'This is the base URL for the Libris spellchecking API.','Free'),
395
('LibrisURL', 'http://api.libris.kb.se/bibspell/'),
396
('LinkerConsiderDiacritics', '0', NULL, 'Linker should consider diacritics', 'YesNo'),
396
('LinkerConsiderDiacritics', '0'),
397
('LinkerConsiderThesaurus','0',NULL,'If ON the authority linker will only search for 6XX authorities from the same source as the heading','YesNo'),
397
('LinkerConsiderThesaurus','0'),
398
('LinkerKeepStale','0',NULL,'If ON the authority linker will keep existing authority links for headings where it is unable to find a match.','YesNo'),
398
('LinkerKeepStale','0'),
399
('LinkerModule','Default','Default|FirstMatch|LastMatch','Chooses which linker module to use (see documentation).','Choice'),
399
('LinkerModule','Default'),
400
('LinkerOptions','',NULL,'A pipe-separated list of options for the linker.','Free'),
400
('LinkerOptions',''),
401
('LinkerRelink','1',NULL,'If ON the authority linker will relink headings that have previously been linked every time it runs.','YesNo'),
401
('LinkerRelink','1'),
402
('ListOwnerDesignated', '', NULL, 'Designated list owner at patron deletion', 'Free'),
402
('ListOwnerDesignated', ''),
403
('ListOwnershipUponPatronDeletion', 'delete', 'delete|transfer|transfer_public', 'Defines the action on their public or shared lists when patron is deleted', 'Choice'),
403
('ListOwnershipUponPatronDeletion', 'delete'),
404
('LoadCheckoutsTableDelay','0',NULL,'Delay before auto-loading checkouts table on checkouts screen','Integer'),
404
('LoadCheckoutsTableDelay','0'),
405
('LoadSearchHistoryToTheFirstLoggedUser', '1', NULL, 'If ON, the next user will automatically get the last searches in their history', 'YesNo'),
405
('LoadSearchHistoryToTheFirstLoggedUser', '1'),
406
('LocalCoverImages','0',NULL,'Display local cover images on intranet details pages.','YesNo'),
406
('LocalCoverImages','0'),
407
('LocalHoldsPriority', 'None', 'GiveLibrary|None|GiveLibraryGroup|GiveLibraryAndGroup', 'Enables the LocalHoldsPriority feature', 'Choice'),
407
('LocalHoldsPriority', 'None'),
408
('LocalHoldsPriorityItemControl', 'holdingbranch', 'holdingbranch|homebranch', 'decides if the feature operates using the item\'s home or holding library.', 'Choice'),
408
('LocalHoldsPriorityItemControl', 'holdingbranch'),
409
('LocalHoldsPriorityPatronControl', 'PickupLibrary', 'HomeLibrary|PickupLibrary', 'decides if the feature operates using the library set as the patron\'s home library, or the library set as the pickup library for the given hold.', 'Choice'),
409
('LocalHoldsPriorityPatronControl', 'PickupLibrary'),
410
('LockExpiredDelay','',NULL,'Delay for locking expired patrons (empty means no locking)','Integer'),
410
('LockExpiredDelay',''),
411
('LostChargesControl','ItemHomeLibrary','PickupLibrary|PatronLibrary|ItemHomeLibrary','Specify the agency that controls the charges for items being marked lost','Choice'),
411
('LostChargesControl','ItemHomeLibrary'),
412
('makePreviousSerialAvailable','0',NULL,'make previous serial automatically available when collecting a new serial. Please note that the item-level_itypes syspref must be set to specific item.','YesNo'),
412
('makePreviousSerialAvailable','0'),
413
('Mana','2',NULL,'request to Mana Webservice. Mana centralize common information between other Koha to facilitate the creation of new subscriptions, vendors, report queries etc... You can search, share, import and comment the content of Mana.','Choice'),
413
('Mana','2'),
414
('ManaToken','',NULL,'Security token used for authentication on Mana KB service (anti spam)','Textarea'),
414
('ManaToken',''),
415
('ManualRenewalPeriodBase','date_due','date_due|now','Set whether the renewal date should be counted from the date_due or from the moment the Patron asks for renewal, for manual renewals ','Choice'),
415
('ManualRenewalPeriodBase','date_due'),
416
('MARCAuthorityControlField008','|| aca||aabn           | a|a     d',NULL,'Define the contents of MARC21 authority control field 008 position 06-39','Textarea'),
416
('MARCAuthorityControlField008','|| aca||aabn           | a|a     d'),
417
('MarcFieldDocURL', '', NULL, 'URL used for MARC field documentation. Following substitutions are available: {MARC} = marc flavour, eg. "MARC21" or "UNIMARC". {FIELD} = field number, eg. "000" or "048". {LANG} = user language, eg. "en" or "fi-FI"', 'Free'),
417
('MarcFieldDocURL', ''),
418
('MarcFieldForCreatorId','',NULL,'Where to store the borrowernumber of the record\'s creator','Free'),
418
('MarcFieldForCreatorId',''),
419
('MarcFieldForCreatorName','',NULL,'Where to store the name of the record\'s creator','Free'),
419
('MarcFieldForCreatorName',''),
420
('MarcFieldForModifierId','',NULL,'Where to store the borrowernumber of the record\'s last modifier','Free'),
420
('MarcFieldForModifierId',''),
421
('MarcFieldForModifierName','',NULL,'Where to store the name of the record\'s last modifier','Free'),
421
('MarcFieldForModifierName',''),
422
('MarcFieldsToOrder','',NULL,'Set the mapping values for a new order line created from a MARC record in a staged file. In a YAML format.','textarea'),
422
('MarcFieldsToOrder',''),
423
('MarcItemFieldsToOrder','',NULL,'Set the mapping values for new item records created from a MARC record in a staged file. In a YAML format.','textarea'),
423
('MarcItemFieldsToOrder',''),
424
('MarcOrderingAutomation','0',NULL,'Enables automatic order line creation from MARC records','YesNo'),
424
('MarcOrderingAutomation','0'),
425
('MARCOrgCode','OSt',NULL,'Define MARC Organization Code for MARC21 records - http://www.loc.gov/marc/organizations/orgshome.html','Free'),
425
('MARCOrgCode','OSt'),
426
('MARCOverlayRules','0',NULL,'Use the MARC record overlay rules system to decide what actions to take for each field when modifying records.','YesNo'),
426
('MARCOverlayRules','0'),
427
('MarkLostItemsAsReturned','batchmod,moredetail,cronjob,additem,pendingreserves,onpayment','claim_returned|batchmod|moredetail|cronjob|additem|pendingreserves|onpayment','Mark items as returned when flagged as lost','multiple'),
427
('MarkLostItemsAsReturned','batchmod,moredetail,cronjob,additem,pendingreserves,onpayment'),
428
('MaxComponentRecords', '300', NULL,'Max number of component records to display','Integer'),
428
('MaxComponentRecords', '300'),
429
('MaxFine','',NULL,'Maximum fine a patron can have for all late returns at one moment. Single item caps are specified in the circulation rules matrix.','Integer'),
429
('MaxFine',''),
430
('maxItemsInSearchResults','20',NULL,'Specify the maximum number of items to display for each result on a page of results','Free'),
430
('maxItemsInSearchResults','20'),
431
('MaxItemsToDisplayForBatchDel','1000',NULL,'Display up to a given number of items in a single item deletionbatch.','Integer'),
431
('MaxItemsToDisplayForBatchDel','1000'),
432
('MaxItemsToDisplayForBatchMod','1000',NULL,'Display up to a given number of items in a single item modification batch.','Integer'),
432
('MaxItemsToDisplayForBatchMod','1000'),
433
('MaxItemsToProcessForBatchMod','1000',NULL,'Process up to a given number of items in a single item modification batch.','Integer'),
433
('MaxItemsToProcessForBatchMod','1000'),
434
('MaxOpenSuggestions','',NULL,'Limit the number of open suggestions a patron can have at once','Integer'),
434
('MaxOpenSuggestions',''),
435
('maxoutstanding','5',NULL,'maximum amount withstanding to be able make holds','Integer'),
435
('maxoutstanding','5'),
436
('maxRecordsForFacets','20',NULL,NULL,'Integer'),
436
('maxRecordsForFacets','20'),
437
('maxreserves','50',NULL,'Define maximum number of holds a patron can place','Integer'),
437
('maxreserves','50'),
438
('MaxSearchResultsItemsPerRecordStatusCheck','20',NULL,'Max number of items per record for which to check transit and hold status','Integer'),
438
('MaxSearchResultsItemsPerRecordStatusCheck','20'),
439
('MaxTotalSuggestions','',NULL,'Number of total suggestions used for time limit with NumberOfSuggestionDays','Free'),
439
('MaxTotalSuggestions',''),
440
('MembershipExpiryDaysNotice','',NULL,'Send an account expiration notice that a patron\'s card is about to expire after','Integer'),
440
('MembershipExpiryDaysNotice',''),
441
('MergeReportFields','',NULL,'Displayed fields for deleted MARC records after merge','Free'),
441
('MergeReportFields',''),
442
('minPasswordLength','8',NULL,'Specify the minimum length of a patron/staff password','Free'),
442
('minPasswordLength','8'),
443
('NewItemsDefaultLocation','',NULL,'If set, all new items will have a location of the given Location Code ( Authorized Value type LOC )',''),
443
('NewItemsDefaultLocation',''),
444
('NewsAuthorDisplay','none','none|opac|staff|both','Display the author name for news items.','Choice'),
444
('NewsAuthorDisplay','none'),
445
('noissuescharge','5',NULL,'Define maximum amount withstanding before checkouts are blocked','Integer'),
445
('noissuescharge','5'),
446
('NoIssuesChargeGuarantees','',NULL,'Define maximum amount withstanding before checkouts are blocked','Integer'),
446
('NoIssuesChargeGuarantees',''),
447
('NoIssuesChargeGuarantorsWithGuarantees','',NULL,'Define maximum amount withstanding before checkouts are blocked including guarantors and their other guarantees','Integer'),
447
('NoIssuesChargeGuarantorsWithGuarantees',''),
448
('noItemTypeImages','0',NULL,'If ON, disables itemtype images in the staff interface','YesNo'),
448
('noItemTypeImages','0'),
449
('NoRefundOnLostFinesPaidAge','',NULL,'Do not refund lost item fees if the fee was paid off more than this number of days ago','Integer'),
449
('NoRefundOnLostFinesPaidAge',''),
450
('NoRefundOnLostReturnedItemsAge','',NULL,'Do not refund lost item fees if item is lost for more than this number of days','Integer'),
450
('NoRefundOnLostReturnedItemsAge',''),
451
('NoRenewalBeforePrecision','exact_time','date|exact_time','Calculate "No renewal before" based on date only or exact time of due date','Choice'),
451
('NoRenewalBeforePrecision','exact_time'),
452
('NotesToHide','',NULL,'List of notes fields that should not appear in the title notes/description separator of details','Free'),
452
('NotesToHide',''),
453
('NotHighlightedWords','and|or|not',NULL,'List of words to NOT highlight when OpacHitHighlight is enabled','Free'),
453
('NotHighlightedWords','and|or|not'),
454
('NoticeBcc','',NULL,'Email address to bcc outgoing notices sent by email','Free'),
454
('NoticeBcc',''),
455
('NoticeCSS','',NULL,'Notices CSS url.','Free'),
455
('NoticeCSS',''),
456
('NoticesLog','0',NULL,'If enabled, log changes to notice templates','YesNo'),
456
('NoticesLog','0'),
457
('NotifyBorrowerDeparture','30',NULL,'Define number of days before expiry where circulation is warned about patron account expiry','Integer'),
457
('NotifyBorrowerDeparture','30'),
458
('NotifyPasswordChange','1',NULL,'Notify patrons whenever their password is changed.','YesNo'),
458
('NotifyPasswordChange','1'),
459
('NovelistSelectEnabled','0',NULL,'Enable Novelist Select content.  Requires Novelist Profile and Password','YesNo'),
459
('NovelistSelectEnabled','0'),
460
('NovelistSelectPassword','',NULL,'Novelist select user Password','Free'),
460
('NovelistSelectPassword',''),
461
('NovelistSelectProfile','',NULL,'Novelist Select user Profile','Free'),
461
('NovelistSelectProfile',''),
462
('NovelistSelectStaffEnabled','0',NULL,'Enable Novelist Select content in the staff interface.  Requires Novelist Profile and Password','YesNo'),
462
('NovelistSelectStaffEnabled','0'),
463
('NovelistSelectStaffProfile','',NULL,'Novelist Select user Profile for staff interface','Free'),
463
('NovelistSelectStaffProfile',''),
464
('NovelistSelectStaffView','tab','tab|above|below','Where to display Novelist Select content in the staff interface','Choice'),
464
('NovelistSelectStaffView','tab'),
465
('NovelistSelectView','tab','tab|above|below|right','Where to display Novelist Select content','Choice'),
465
('NovelistSelectView','tab'),
466
('NumberOfSuggestionDays','',NULL,'Number of days that will be used to determine the MaxTotalSuggestions limit','Free'),
466
('NumberOfSuggestionDays',''),
467
('numReturnedItemsToShow','20',NULL,'Number of returned items to show on the check-in page','Integer'),
467
('numReturnedItemsToShow','20'),
468
('numSearchResults','20',NULL,'Specify the maximum number of results to display on a page of results','Integer'),
468
('numSearchResults','20'),
469
('numSearchResultsDropdown', '0', NULL, 'Enable option list of number of results per page to show in staff interface search results','YesNo'),
469
('numSearchResultsDropdown', '0'),
470
('numSearchRSSResults','50',NULL,'Specify the maximum number of results to display on a RSS page of results','Integer'),
470
('numSearchRSSResults','50'),
471
('OAI-PMH','0',NULL,'if ON, OAI-PMH server is enabled','YesNo'),
471
('OAI-PMH','0'),
472
('OAI-PMH:archiveID','KOHA-OAI-TEST',NULL,'OAI-PMH archive identification','Free'),
472
('OAI-PMH:archiveID','KOHA-OAI-TEST'),
473
('OAI-PMH:AutoUpdateSets','0',NULL,'Automatically update OAI sets when a bibliographic or item record is created or updated','YesNo'),
473
('OAI-PMH:AutoUpdateSets','0'),
474
('OAI-PMH:AutoUpdateSetsEmbedItemData', '0', NULL, 'Embed item information when automatically updating OAI sets. Requires OAI-PMH:AutoUpdateSets syspref to be enabled', 'YesNo'),
474
('OAI-PMH:AutoUpdateSetsEmbedItemData', '0'),
475
('OAI-PMH:ConfFile','',NULL,'If empty, Koha OAI Server operates in normal mode, otherwise it operates in extended mode.','File'),
475
('OAI-PMH:ConfFile',''),
476
('OAI-PMH:DeletedRecord','persistent','transient|persistent|no','Koha\'s deletedbiblio table will never be deleted (persistent), might be deleted (transient), or will never have any data in it (no)','Choice'),
476
('OAI-PMH:DeletedRecord','persistent'),
477
('OAI-PMH:HarvestEmailReport','',NULL,'After an OAI-PMH harvest, send a report email to the email address','Free'),
477
('OAI-PMH:HarvestEmailReport',''),
478
('OAI-PMH:MaxCount','50',NULL,'OAI-PMH maximum number of records by answer to ListRecords and ListIdentifiers queries','Integer'),
478
('OAI-PMH:MaxCount','50'),
479
('OnSiteCheckoutAutoCheck','0',NULL,'Enable/Do not enable onsite checkout by default if last checkout was an onsite checkout','YesNo'),
479
('OnSiteCheckoutAutoCheck','0'),
480
('OnSiteCheckouts','0',NULL,'Enable/Disable the on-site checkouts feature','YesNo'),
480
('OnSiteCheckouts','0'),
481
('OnSiteCheckoutsForce','0',NULL,'Enable/Disable the on-site for all cases (Even if a user is debarred, etc.)','YesNo'),
481
('OnSiteCheckoutsForce','0'),
482
('OPACAcquisitionDetails','0',NULL,'Show the acquisition details at the OPAC','YesNo'),
482
('OPACAcquisitionDetails','0'),
483
('OpacAdditionalStylesheet','',NULL,'Define an auxiliary stylesheet for OPAC use, to override specified settings from the primary opac.css stylesheet. Enter the filename (if the file is in the server\'s css directory) or a complete URL beginning with http (if the file lives on a remote server).','Free'),
483
('OpacAdditionalStylesheet',''),
484
('OpacAddMastheadLibraryPulldown','0',NULL,'Adds a pulldown menu to select the library to search on the opac masthead.','YesNo'),
484
('OpacAddMastheadLibraryPulldown','0'),
485
('OpacAdvancedSearchTypes','itemtypes','itemtypes|ccode','Select which set of fields are available as limits on the OPAC advanced search page','Choice'),
485
('OpacAdvancedSearchTypes','itemtypes'),
486
('OpacAdvSearchMoreOptions','pubdate,itemtype,language,subtype,sorting,location','Show search options for the expanded view (More options)','pubdate|itemtype|language|subtype|sorting|location','multiple'),
486
('OpacAdvSearchMoreOptions','pubdate,itemtype,language,subtype,sorting,location'),
487
('OpacAdvSearchOptions','pubdate,itemtype,language,sorting,location','Show search options','pubdate|itemtype|language|subtype|sorting|location','multiple'),
487
('OpacAdvSearchOptions','pubdate,itemtype,language,sorting,location'),
488
('OPACAllowHoldDateInFuture','0',NULL,'If set, along with the AllowHoldDateInFuture system preference, OPAC users can set the date of a hold to be in the future.','YesNo'),
488
('OPACAllowHoldDateInFuture','0'),
489
('OpacAllowPublicListCreation','1',NULL,'If set, allows opac users to create public lists','YesNo'),
489
('OpacAllowPublicListCreation','1'),
490
('OpacAllowSharingPrivateLists','0',NULL,'If set, allows opac users to share private lists with other patrons','YesNo'),
490
('OpacAllowSharingPrivateLists','0'),
491
('OPACAllowUserToChangeBranch','','Pending, In-Transit, Suspended','Allow users to change the library to pick up a hold for these statuses:','multiple'),
491
('OPACAllowUserToChangeBranch',''),
492
('OPACAllowUserToChooseBranch','1',NULL,'Allow the user to choose the branch they want to pickup their hold from','YesNo'),
492
('OPACAllowUserToChooseBranch','1'),
493
('OPACAmazonCoverImages','0',NULL,'Display cover images on OPAC from Amazon Web Services','YesNo'),
493
('OPACAmazonCoverImages','0'),
494
('OPACAuthorIdentifiersAndInformation', '', NULL, 'Display author information on the OPAC detail page','multiple_sortable'),
494
('OPACAuthorIdentifiersAndInformation', ''),
495
('OpacAuthorities','1',NULL,'If ON, enables the search authorities link on OPAC','YesNo'),
495
('OpacAuthorities','1'),
496
('OPACBaseURL','',NULL,'Specify the Base URL of the OPAC, e.g., http://opac.mylibrary.com, including the protocol (http:// or https://). Otherwise, the http:// will be added automatically by Koha upon saving.','Free'),
496
('OPACBaseURL',''),
497
('opacbookbag','1',NULL,'If ON, enables display of Cart feature','YesNo'),
497
('opacbookbag','1'),
498
('OpacBrowser','0',NULL,'If ON, enables subject authorities browser on OPAC (needs to set misc/cronjob/sbuild_browser_and_cloud.pl)','YesNo'),
498
('OpacBrowser','0'),
499
('OpacBrowseResults','1',NULL,'Disable/enable browsing and paging search results from the OPAC detail page.','YesNo'),
499
('OpacBrowseResults','1'),
500
('OpacBrowseSearch', '0',NULL, 'Elasticsearch only: add a page allowing users to \'browse\' all items in the collection','YesNo'),
500
('OpacBrowseSearch', '0'),
501
('OpacCatalogConcerns', '0', NULL, 'Allow logged in OPAC users to report catalog concerns', 'YesNo'),
501
('OpacCatalogConcerns', '0'),
502
('OpacCloud','0',NULL,'If ON, enables subject cloud on OPAC','YesNo'),
502
('OpacCloud','0'),
503
('OpacCoce','0', NULL, 'If on, enables cover retrieval from the configured Coce server in the OPAC', 'YesNo'),
503
('OpacCoce','0'),
504
('OPACComments','1',NULL,'If ON, enables patron reviews of bibliographic records in the OPAC','YesNo'),
504
('OPACComments','1'),
505
('OPACCustomCoverImages','0',NULL,'If enabled, the custom cover images will be displayed at the OPAC. CustomCoverImagesURL must be defined.','YesNo'),
505
('OPACCustomCoverImages','0'),
506
('OPACdefaultSortField','relevance','relevance|popularity|call_number|pubdate|acqdate|title|author','Specify the default field used for sorting','Choice'),
506
('OPACdefaultSortField','relevance'),
507
('OPACdefaultSortOrder','dsc','asc|dsc|za|az','Specify the default sort order','Choice'),
507
('OPACdefaultSortOrder','dsc'),
508
('OPACDetailQRCode','0',NULL,'Enable the display of a QR Code on the OPAC detail page','YesNo'),
508
('OPACDetailQRCode','0'),
509
('OPACdidyoumean','',NULL,'Did you mean? configuration for the OPAC. Do not change, as this is controlled by /cgi-bin/koha/admin/didyoumean.pl.','Free'),
509
('OPACdidyoumean',''),
510
('OPACDisableSendList','0',NULL,'Allow OPAC users to email lists via a "Send list" button','YesNo'),
510
('OPACDisableSendList','0'),
511
('OPACDisplay856uAsImage','OFF','OFF|Details|Results|Both','Display the URI in the 856u field as an image, the corresponding OPACXSLT option must be on','Choice'),
511
('OPACDisplay856uAsImage','OFF'),
512
('OpacExportOptions','bibtex,dc,marcxml,marc8,utf8,marcstd,mods,ris,isbd',NULL,'Define export options available on OPAC detail page.','multiple'),
512
('OpacExportOptions','bibtex,dc,marcxml,marc8,utf8,marcstd,mods,ris,isbd'),
513
('OPACFallback', 'prog', 'bootstrap|prog', 'Define the fallback theme for the OPAC interface.', 'Themes'),
513
('OPACFallback', 'prog'),
514
('OpacFavicon','',NULL,'Enter a complete URL to an image to replace the default Koha favicon on the OPAC','Free'),
514
('OpacFavicon',''),
515
('OPACFineNoRenewals','100',NULL,'Fine limit above which user cannot renew books via OPAC','Integer'),
515
('OPACFineNoRenewals','100'),
516
('OPACFineNoRenewalsBlockAutoRenew','0',NULL,'Block/Allow auto renewals if the patron owe more than OPACFineNoRenewals','YesNo'),
516
('OPACFineNoRenewalsBlockAutoRenew','0'),
517
('OPACFineNoRenewalsIncludeCredits','1',NULL,'If enabled the value specified in OPACFineNoRenewals should include any unapplied account credits in the calculation','YesNo'),
517
('OPACFineNoRenewalsIncludeCredits','1'),
518
('OPACFinesTab','1',NULL,'If OFF the patron fines tab in the OPAC is disabled.','YesNo'),
518
('OPACFinesTab','1'),
519
('OPACFRBRizeEditions','0',NULL,'If ON, the OPAC will query one or more ISBN web services for associated ISBNs and display an Editions tab on the details pages','YesNo'),
519
('OPACFRBRizeEditions','0'),
520
('OpacHiddenItems','',NULL,'This syspref allows to define custom rules for hiding specific items at the OPAC. See https://wiki.koha-community.org/wiki/OpacHiddenItems for more information.','Textarea'),
520
('OpacHiddenItems',''),
521
('OpacHiddenItemsExceptions','',NULL,'List of borrower categories, separated by comma, that can see items otherwise hidden by OpacHiddenItems','Textarea'),
521
('OpacHiddenItemsExceptions',''),
522
('OpacHiddenItemsHidesRecord','1',NULL,'Hide biblio record when all its items are hidden because of OpacHiddenItems','YesNo'),
522
('OpacHiddenItemsHidesRecord','1'),
523
('OpacHighlightedWords','1',NULL,'If Set, then queried words are higlighted in OPAC','YesNo'),
523
('OpacHighlightedWords','1'),
524
('OpacHoldNotes','0',NULL,'Show hold notes on OPAC','YesNo'),
524
('OpacHoldNotes','0'),
525
('OPACHoldRequests','1',NULL,'If ON, globally enables patron holds on OPAC','YesNo'),
525
('OPACHoldRequests','1'),
526
('OPACHoldsHistory','0',NULL,'If ON, enables display of Patron Holds History in OPAC','YesNo'),
526
('OPACHoldsHistory','0'),
527
('OPACHoldsIfAvailableAtPickup','1',NULL,'Allow patrons to place a hold at pickup locations (libraries) where the item is available','YesNo'),
527
('OPACHoldsIfAvailableAtPickup','1'),
528
('OPACHoldsIfAvailableAtPickupExceptions','',NULL,'List the patron categories not affected by OPACHoldsIfAvailableAtPickup if off','Free'),
528
('OPACHoldsIfAvailableAtPickupExceptions',''),
529
('OPACISBD','#100||{ 100a }{ 100b }{ 100c }{ 100d }{ 110a }{ 110b }{ 110c }{ 110d }{ 110e }{ 110f }{ 110g }{ 130a }{ 130d }{ 130f }{ 130g }{ 130h }{ 130k }{ 130l }{ 130m }{ 130n }{ 130o }{ 130p }{ 130r }{ 130s }{ 130t }|<br/><br/>\r\n#245||{ 245a }{ 245b }{245f }{ 245g }{ 245k }{ 245n }{ 245p }{ 245s }{ 245h }|\r\n#246||{ : 246i }{ 246a }{ 246b }{ 246f }{ 246g }{ 246n }{ 246p }{ 246h }|\r\n#242||{ = 242a }{ 242b }{ 242n }{ 242p }{ 242h }|\r\n#245||{ 245c }|\r\n#242||{ = 242c }|\r\n#250| - |{ 250a }{ 250b }|\r\n#254|, |{ 254a }|\r\n#255|, |{ 255a }{ 255b }{ 255c }{ 255d }{ 255e }{ 255f }{ 255g }|\r\n#256|, |{ 256a }|\r\n#257|, |{ 257a }|\r\n#258|, |{ 258a }{ 258b }|\r\n#260| - |{ 260a }{ 260b }{ 260c }|\r\n#300| - |{ 300a }{ 300b }{ 300c }{ 300d }{ 300e }{ 300f }{ 300g }|\r\n#306| - |{ 306a }|\r\n#307| - |{ 307a }{ 307b }|\r\n#310| - |{ 310a }{ 310b }|\r\n#321| - |{ 321a }{ 321b }|\r\n#340| - |{ 3403 }{ 340a }{ 340b }{ 340c }{ 340d }{ 340e }{ 340f }{ 340h }{ 340i }|\r\n#342| - |{ 342a }{ 342b }{ 342c }{ 342d }{ 342e }{ 342f }{ 342g }{ 342h }{ 342i }{ 342j }{ 342k }{ 342l }{ 342m }{ 342n }{ 342o }{ 342p }{ 342q }{ 342r }{ 342s }{ 342t }{ 342u }{ 342v }{ 342w }|\r\n#343| - |{ 343a }{ 343b }{ 343c }{ 343d }{ 343e }{ 343f }{ 343g }{ 343h }{ 343i }|\r\n#351| - |{ 3513 }{ 351a }{ 351b }{ 351c }|\r\n#352| - |{ 352a }{ 352b }{ 352c }{ 352d }{ 352e }{ 352f }{ 352g }{ 352i }{ 352q }|\r\n#362| - |{ 362a }{ 351z }|\r\n#440| - |{ 440a }{ 440n }{ 440p }{ 440v }{ 440x }|.\r\n#490| - |{ 490a }{ 490v }{ 490x }|.\r\n#800| - |{ 800a }{ 800b }{ 800c }{ 800d }{ 800e }{ 800f }{ 800g }{ 800h }{ 800j }{ 800k }{ 800l }{ 800m }{ 800n }{ 800o }{ 800p }{ 800q }{ 800r }{ 800s }{ 800t }{ 800u }{ 800v }|.\r\n#810| - |{ 810a }{ 810b }{ 810c }{ 810d }{ 810e }{ 810f }{ 810g }{ 810h }{ 810k }{ 810l }{ 810m }{ 810n }{ 810o }{ 810p }{ 810r }{ 810s }{ 810t }{ 810u }{ 810v }|.\r\n#811| - |{ 811a }{ 811c }{ 811d }{ 811e }{ 811f }{ 811g }{ 811h }{ 811k }{ 811l }{ 811n }{ 811p }{ 811q }{ 811s }{ 811t }{ 811u }{ 811v }|.\r\n#830| - |{ 830a }{ 830d }{ 830f }{ 830g }{ 830h }{ 830k }{ 830l }{ 830m }{ 830n }{ 830o }{ 830p }{ 830r }{ 830s }{ 830t }{ 830v }|.\r\n#500|<br/><br/>|{ 5003 }{ 500a }|\r\n#501|<br/><br/>|{ 501a }|\r\n#502|<br/><br/>|{ 502a }|\r\n#504|<br/><br/>|{ 504a }|\r\n#505|<br/><br/>|{ 505a }{ 505t }{ 505r }{ 505g }{ 505u }|\r\n#506|<br/><br/>|{ 5063 }{ 506a }{ 506b }{ 506c }{ 506d }{ 506u }|\r\n#507|<br/><br/>|{ 507a }{ 507b }|\r\n#508|<br/><br/>|{ 508a }{ 508a }|\r\n#510|<br/><br/>|{ 5103 }{ 510a }{ 510x }{ 510c }{ 510b }|\r\n#511|<br/><br/>|{ 511a }|\r\n#513|<br/><br/>|{ 513a }{513b }|\r\n#514|<br/><br/>|{ 514z }{ 514a }{ 514b }{ 514c }{ 514d }{ 514e }{ 514f }{ 514g }{ 514h }{ 514i }{ 514j }{ 514k }{ 514m }{ 514u }|\r\n#515|<br/><br/>|{ 515a }|\r\n#516|<br/><br/>|{ 516a }|\r\n#518|<br/><br/>|{ 5183 }{ 518a }|\r\n#520|<br/><br/>|{ 5203 }{ 520a }{ 520b }{ 520u }|\r\n#521|<br/><br/>|{ 5213 }{ 521a }{ 521b }|\r\n#522|<br/><br/>|{ 522a }|\r\n#524|<br/><br/>|{ 524a }|\r\n#525|<br/><br/>|{ 525a }|\r\n#526|<br/><br/>|{\\n510i }{\\n510a }{ 510b }{ 510c }{ 510d }{\\n510x }|\r\n#530|<br/><br/>|{\\n5063 }{\\n506a }{ 506b }{ 506c }{ 506d }{\\n506u }|\r\n#533|<br/><br/>|{\\n5333 }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }|\r\n#534|<br/><br/>|{\\n533p }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }{\\n533t }{\\n533x }{\\n533z }|\r\n#535|<br/><br/>|{\\n5353 }{\\n535a }{\\n535b }{\\n535c }{\\n535d }|\r\n#538|<br/><br/>|{\\n5383 }{\\n538a }{\\n538i }{\\n538u }|\r\n#540|<br/><br/>|{\\n5403 }{\\n540a }{ 540b }{ 540c }{ 540d }{\\n520u }|\r\n#544|<br/><br/>|{\\n5443 }{\\n544a }{\\n544b }{\\n544c }{\\n544d }{\\n544e }{\\n544n }|\r\n#545|<br/><br/>|{\\n545a }{ 545b }{\\n545u }|\r\n#546|<br/><br/>|{\\n5463 }{\\n546a }{ 546b }|\r\n#547|<br/><br/>|{\\n547a }|\r\n#550|<br/><br/>|{ 550a }|\r\n#552|<br/><br/>|{ 552z }{ 552a }{ 552b }{ 552c }{ 552d }{ 552e }{ 552f }{ 552g }{ 552h }{ 552i }{ 552j }{ 552k }{ 552l }{ 552m }{ 552n }{ 562o }{ 552p }{ 552u }|\r\n#555|<br/><br/>|{ 5553 }{ 555a }{ 555b }{ 555c }{ 555d }{ 555u }|\r\n#556|<br/><br/>|{ 556a }{ 506z }|\r\n#563|<br/><br/>|{ 5633 }{ 563a }{ 563u }|\r\n#565|<br/><br/>|{ 5653 }{ 565a }{ 565b }{ 565c }{ 565d }{ 565e }|\r\n#567|<br/><br/>|{ 567a }|\r\n#580|<br/><br/>|{ 580a }|\r\n#581|<br/><br/>|{ 5633 }{ 581a }{ 581z }|\r\n#584|<br/><br/>|{ 5843 }{ 584a }{ 584b }|\r\n#585|<br/><br/>|{ 5853 }{ 585a }|\r\n#586|<br/><br/>|{ 5863 }{ 586a }|\r\n#020|<br/><br/><label>ISBN: </label>|{ 020a }{ 020c }|\r\n#022|<br/><br/><label>ISSN: </label>|{ 022a }|\r\n#222| = |{ 222a }{ 222b }|\r\n#210| = |{ 210a }{ 210b }|\r\n#024|<br/><br/><label>Standard No.: </label>|{ 024a }{ 024c }{ 024d }{ 0242 }|\r\n#027|<br/><br/><label>Standard Tech. Report. No.: </label>|{ 027a }|\r\n#028|<br/><br/><label>Publisher. No.: </label>|{ 028a }{ 028b }|\r\n#013|<br/><br/><label>Patent No.: </label>|{ 013a }{ 013b }{ 013c }{ 013d }{ 013e }{ 013f }|\r\n#030|<br/><br/><label>CODEN: </label>|{ 030a }|\r\n#037|<br/><br/><label>Source: </label>|{ 037a }{ 037b }{ 037c }{ 037f }{ 037g }{ 037n }|\r\n#010|<br/><br/><label>LCCN: </label>|{ 010a }|\r\n#015|<br/><br/><label>Nat. Bib. No.: </label>|{ 015a }{ 0152 }|\r\n#016|<br/><br/><label>Nat. Bib. Agency Control No.: </label>|{ 016a }{ 0162 }|\r\n#600|<br/><br/><label>Subjects--Personal Names: </label>|{\\n6003 }{\\n600a}{ 600b }{ 600c }{ 600d }{ 600e }{ 600f }{ 600g }{ 600h }{--600k}{ 600l }{ 600m }{ 600n }{ 600o }{--600p}{ 600r }{ 600s }{ 600t }{ 600u }{--600x}{--600z}{--600y}{--600v}|\r\n#610|<br/><br/><label>Subjects--Corporate Names: </label>|{\\n6103 }{\\n610a}{ 610b }{ 610c }{ 610d }{ 610e }{ 610f }{ 610g }{ 610h }{--610k}{ 610l }{ 610m }{ 610n }{ 610o }{--610p}{ 610r }{ 610s }{ 610t }{ 610u }{--610x}{--610z}{--610y}{--610v}|\r\n#611|<br/><br/><label>Subjects--Meeting Names: </label>|{\\n6113 }{\\n611a}{ 611b }{ 611c }{ 611d }{ 611e }{ 611f }{ 611g }{ 611h }{--611k}{ 611l }{ 611m }{ 611n }{ 611o }{--611p}{ 611r }{ 611s }{ 611t }{ 611u }{--611x}{--611z}{--611y}{--611v}|\r\n#630|<br/><br/><label>Subjects--Uniform Titles: </label>|{\\n630a}{ 630b }{ 630c }{ 630d }{ 630e }{ 630f }{ 630g }{ 630h }{--630k }{ 630l }{ 630m }{ 630n }{ 630o }{--630p}{ 630r }{ 630s }{ 630t }{--630x}{--630z}{--630y}{--630v}|\r\n#648|<br/><br/><label>Subjects--Chronological Terms: </label>|{\\n6483 }{\\n648a }{--648x}{--648z}{--648y}{--648v}|\r\n#650|<br/><br/><label>Subjects--Topical Terms: </label>|{\\n6503 }{\\n650a}{ 650b }{ 650c }{ 650d }{ 650e }{--650x}{--650z}{--650y}{--650v}|\r\n#651|<br/><br/><label>Subjects--Geographic Terms: </label>|{\\n6513 }{\\n651a}{ 651b }{ 651c }{ 651d }{ 651e }{--651x}{--651z}{--651y}{--651v}|\r\n#653|<br/><br/><label>Subjects--Index Terms: </label>|{ 653a }|\r\n#654|<br/><br/><label>Subjects--Facted Index Terms: </label>|{\\n6543 }{\\n654a}{--654b}{--654x}{--654z}{--654y}{--654v}|\r\n#655|<br/><br/><label>Index Terms--Genre/Form: </label>|{\\n6553 }{\\n655a}{--655b}{--655x }{--655z}{--655y}{--655v}|\r\n#656|<br/><br/><label>Index Terms--Occupation: </label>|{\\n6563 }{\\n656a}{--656k}{--656x}{--656z}{--656y}{--656v}|\r\n#657|<br/><br/><label>Index Terms--Function: </label>|{\\n6573 }{\\n657a}{--657x}{--657z}{--657y}{--657v}|\r\n#658|<br/><br/><label>Index Terms--Curriculum Objective: </label>|{\\n658a}{--658b}{--658c}{--658d}{--658v}|\r\n#050|<br/><br/><label>LC Class. No.: </label>|{ 050a }{ / 050b }|\r\n#082|<br/><br/><label>Dewey Class. No.: </label>|{ 082a }{ / 082b }|\r\n#080|<br/><br/><label>Universal Decimal Class. No.: </label>|{ 080a }{ 080x }{ / 080b }|\r\n#070|<br/><br/><label>National Agricultural Library Call No.: </label>|{ 070a }{ / 070b }|\r\n#060|<br/><br/><label>National Library of Medicine Call No.: </label>|{ 060a }{ / 060b }|\r\n#074|<br/><br/><label>GPO Item No.: </label>|{ 074a }|\r\n#086|<br/><br/><label>Gov. Doc. Class. No.: </label>|{ 086a }|\r\n#088|<br/><br/><label>Report. No.: </label>|{ 088a }|','70|10','OPAC ISBD','Textarea'),
529
('OPACISBD','#100||{ 100a }{ 100b }{ 100c }{ 100d }{ 110a }{ 110b }{ 110c }{ 110d }{ 110e }{ 110f }{ 110g }{ 130a }{ 130d }{ 130f }{ 130g }{ 130h }{ 130k }{ 130l }{ 130m }{ 130n }{ 130o }{ 130p }{ 130r }{ 130s }{ 130t }|<br/><br/>\r\n#245||{ 245a }{ 245b }{245f }{ 245g }{ 245k }{ 245n }{ 245p }{ 245s }{ 245h }|\r\n#246||{ : 246i }{ 246a }{ 246b }{ 246f }{ 246g }{ 246n }{ 246p }{ 246h }|\r\n#242||{ = 242a }{ 242b }{ 242n }{ 242p }{ 242h }|\r\n#245||{ 245c }|\r\n#242||{ = 242c }|\r\n#250| - |{ 250a }{ 250b }|\r\n#254|, |{ 254a }|\r\n#255|, |{ 255a }{ 255b }{ 255c }{ 255d }{ 255e }{ 255f }{ 255g }|\r\n#256|, |{ 256a }|\r\n#257|, |{ 257a }|\r\n#258|, |{ 258a }{ 258b }|\r\n#260| - |{ 260a }{ 260b }{ 260c }|\r\n#300| - |{ 300a }{ 300b }{ 300c }{ 300d }{ 300e }{ 300f }{ 300g }|\r\n#306| - |{ 306a }|\r\n#307| - |{ 307a }{ 307b }|\r\n#310| - |{ 310a }{ 310b }|\r\n#321| - |{ 321a }{ 321b }|\r\n#340| - |{ 3403 }{ 340a }{ 340b }{ 340c }{ 340d }{ 340e }{ 340f }{ 340h }{ 340i }|\r\n#342| - |{ 342a }{ 342b }{ 342c }{ 342d }{ 342e }{ 342f }{ 342g }{ 342h }{ 342i }{ 342j }{ 342k }{ 342l }{ 342m }{ 342n }{ 342o }{ 342p }{ 342q }{ 342r }{ 342s }{ 342t }{ 342u }{ 342v }{ 342w }|\r\n#343| - |{ 343a }{ 343b }{ 343c }{ 343d }{ 343e }{ 343f }{ 343g }{ 343h }{ 343i }|\r\n#351| - |{ 3513 }{ 351a }{ 351b }{ 351c }|\r\n#352| - |{ 352a }{ 352b }{ 352c }{ 352d }{ 352e }{ 352f }{ 352g }{ 352i }{ 352q }|\r\n#362| - |{ 362a }{ 351z }|\r\n#440| - |{ 440a }{ 440n }{ 440p }{ 440v }{ 440x }|.\r\n#490| - |{ 490a }{ 490v }{ 490x }|.\r\n#800| - |{ 800a }{ 800b }{ 800c }{ 800d }{ 800e }{ 800f }{ 800g }{ 800h }{ 800j }{ 800k }{ 800l }{ 800m }{ 800n }{ 800o }{ 800p }{ 800q }{ 800r }{ 800s }{ 800t }{ 800u }{ 800v }|.\r\n#810| - |{ 810a }{ 810b }{ 810c }{ 810d }{ 810e }{ 810f }{ 810g }{ 810h }{ 810k }{ 810l }{ 810m }{ 810n }{ 810o }{ 810p }{ 810r }{ 810s }{ 810t }{ 810u }{ 810v }|.\r\n#811| - |{ 811a }{ 811c }{ 811d }{ 811e }{ 811f }{ 811g }{ 811h }{ 811k }{ 811l }{ 811n }{ 811p }{ 811q }{ 811s }{ 811t }{ 811u }{ 811v }|.\r\n#830| - |{ 830a }{ 830d }{ 830f }{ 830g }{ 830h }{ 830k }{ 830l }{ 830m }{ 830n }{ 830o }{ 830p }{ 830r }{ 830s }{ 830t }{ 830v }|.\r\n#500|<br/><br/>|{ 5003 }{ 500a }|\r\n#501|<br/><br/>|{ 501a }|\r\n#502|<br/><br/>|{ 502a }|\r\n#504|<br/><br/>|{ 504a }|\r\n#505|<br/><br/>|{ 505a }{ 505t }{ 505r }{ 505g }{ 505u }|\r\n#506|<br/><br/>|{ 5063 }{ 506a }{ 506b }{ 506c }{ 506d }{ 506u }|\r\n#507|<br/><br/>|{ 507a }{ 507b }|\r\n#508|<br/><br/>|{ 508a }{ 508a }|\r\n#510|<br/><br/>|{ 5103 }{ 510a }{ 510x }{ 510c }{ 510b }|\r\n#511|<br/><br/>|{ 511a }|\r\n#513|<br/><br/>|{ 513a }{513b }|\r\n#514|<br/><br/>|{ 514z }{ 514a }{ 514b }{ 514c }{ 514d }{ 514e }{ 514f }{ 514g }{ 514h }{ 514i }{ 514j }{ 514k }{ 514m }{ 514u }|\r\n#515|<br/><br/>|{ 515a }|\r\n#516|<br/><br/>|{ 516a }|\r\n#518|<br/><br/>|{ 5183 }{ 518a }|\r\n#520|<br/><br/>|{ 5203 }{ 520a }{ 520b }{ 520u }|\r\n#521|<br/><br/>|{ 5213 }{ 521a }{ 521b }|\r\n#522|<br/><br/>|{ 522a }|\r\n#524|<br/><br/>|{ 524a }|\r\n#525|<br/><br/>|{ 525a }|\r\n#526|<br/><br/>|{\\n510i }{\\n510a }{ 510b }{ 510c }{ 510d }{\\n510x }|\r\n#530|<br/><br/>|{\\n5063 }{\\n506a }{ 506b }{ 506c }{ 506d }{\\n506u }|\r\n#533|<br/><br/>|{\\n5333 }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }|\r\n#534|<br/><br/>|{\\n533p }{\\n533a }{\\n533b }{\\n533c }{\\n533d }{\\n533e }{\\n533f }{\\n533m }{\\n533n }{\\n533t }{\\n533x }{\\n533z }|\r\n#535|<br/><br/>|{\\n5353 }{\\n535a }{\\n535b }{\\n535c }{\\n535d }|\r\n#538|<br/><br/>|{\\n5383 }{\\n538a }{\\n538i }{\\n538u }|\r\n#540|<br/><br/>|{\\n5403 }{\\n540a }{ 540b }{ 540c }{ 540d }{\\n520u }|\r\n#544|<br/><br/>|{\\n5443 }{\\n544a }{\\n544b }{\\n544c }{\\n544d }{\\n544e }{\\n544n }|\r\n#545|<br/><br/>|{\\n545a }{ 545b }{\\n545u }|\r\n#546|<br/><br/>|{\\n5463 }{\\n546a }{ 546b }|\r\n#547|<br/><br/>|{\\n547a }|\r\n#550|<br/><br/>|{ 550a }|\r\n#552|<br/><br/>|{ 552z }{ 552a }{ 552b }{ 552c }{ 552d }{ 552e }{ 552f }{ 552g }{ 552h }{ 552i }{ 552j }{ 552k }{ 552l }{ 552m }{ 552n }{ 562o }{ 552p }{ 552u }|\r\n#555|<br/><br/>|{ 5553 }{ 555a }{ 555b }{ 555c }{ 555d }{ 555u }|\r\n#556|<br/><br/>|{ 556a }{ 506z }|\r\n#563|<br/><br/>|{ 5633 }{ 563a }{ 563u }|\r\n#565|<br/><br/>|{ 5653 }{ 565a }{ 565b }{ 565c }{ 565d }{ 565e }|\r\n#567|<br/><br/>|{ 567a }|\r\n#580|<br/><br/>|{ 580a }|\r\n#581|<br/><br/>|{ 5633 }{ 581a }{ 581z }|\r\n#584|<br/><br/>|{ 5843 }{ 584a }{ 584b }|\r\n#585|<br/><br/>|{ 5853 }{ 585a }|\r\n#586|<br/><br/>|{ 5863 }{ 586a }|\r\n#020|<br/><br/><label>ISBN: </label>|{ 020a }{ 020c }|\r\n#022|<br/><br/><label>ISSN: </label>|{ 022a }|\r\n#222| = |{ 222a }{ 222b }|\r\n#210| = |{ 210a }{ 210b }|\r\n#024|<br/><br/><label>Standard No.: </label>|{ 024a }{ 024c }{ 024d }{ 0242 }|\r\n#027|<br/><br/><label>Standard Tech. Report. No.: </label>|{ 027a }|\r\n#028|<br/><br/><label>Publisher. No.: </label>|{ 028a }{ 028b }|\r\n#013|<br/><br/><label>Patent No.: </label>|{ 013a }{ 013b }{ 013c }{ 013d }{ 013e }{ 013f }|\r\n#030|<br/><br/><label>CODEN: </label>|{ 030a }|\r\n#037|<br/><br/><label>Source: </label>|{ 037a }{ 037b }{ 037c }{ 037f }{ 037g }{ 037n }|\r\n#010|<br/><br/><label>LCCN: </label>|{ 010a }|\r\n#015|<br/><br/><label>Nat. Bib. No.: </label>|{ 015a }{ 0152 }|\r\n#016|<br/><br/><label>Nat. Bib. Agency Control No.: </label>|{ 016a }{ 0162 }|\r\n#600|<br/><br/><label>Subjects--Personal Names: </label>|{\\n6003 }{\\n600a}{ 600b }{ 600c }{ 600d }{ 600e }{ 600f }{ 600g }{ 600h }{--600k}{ 600l }{ 600m }{ 600n }{ 600o }{--600p}{ 600r }{ 600s }{ 600t }{ 600u }{--600x}{--600z}{--600y}{--600v}|\r\n#610|<br/><br/><label>Subjects--Corporate Names: </label>|{\\n6103 }{\\n610a}{ 610b }{ 610c }{ 610d }{ 610e }{ 610f }{ 610g }{ 610h }{--610k}{ 610l }{ 610m }{ 610n }{ 610o }{--610p}{ 610r }{ 610s }{ 610t }{ 610u }{--610x}{--610z}{--610y}{--610v}|\r\n#611|<br/><br/><label>Subjects--Meeting Names: </label>|{\\n6113 }{\\n611a}{ 611b }{ 611c }{ 611d }{ 611e }{ 611f }{ 611g }{ 611h }{--611k}{ 611l }{ 611m }{ 611n }{ 611o }{--611p}{ 611r }{ 611s }{ 611t }{ 611u }{--611x}{--611z}{--611y}{--611v}|\r\n#630|<br/><br/><label>Subjects--Uniform Titles: </label>|{\\n630a}{ 630b }{ 630c }{ 630d }{ 630e }{ 630f }{ 630g }{ 630h }{--630k }{ 630l }{ 630m }{ 630n }{ 630o }{--630p}{ 630r }{ 630s }{ 630t }{--630x}{--630z}{--630y}{--630v}|\r\n#648|<br/><br/><label>Subjects--Chronological Terms: </label>|{\\n6483 }{\\n648a }{--648x}{--648z}{--648y}{--648v}|\r\n#650|<br/><br/><label>Subjects--Topical Terms: </label>|{\\n6503 }{\\n650a}{ 650b }{ 650c }{ 650d }{ 650e }{--650x}{--650z}{--650y}{--650v}|\r\n#651|<br/><br/><label>Subjects--Geographic Terms: </label>|{\\n6513 }{\\n651a}{ 651b }{ 651c }{ 651d }{ 651e }{--651x}{--651z}{--651y}{--651v}|\r\n#653|<br/><br/><label>Subjects--Index Terms: </label>|{ 653a }|\r\n#654|<br/><br/><label>Subjects--Facted Index Terms: </label>|{\\n6543 }{\\n654a}{--654b}{--654x}{--654z}{--654y}{--654v}|\r\n#655|<br/><br/><label>Index Terms--Genre/Form: </label>|{\\n6553 }{\\n655a}{--655b}{--655x }{--655z}{--655y}{--655v}|\r\n#656|<br/><br/><label>Index Terms--Occupation: </label>|{\\n6563 }{\\n656a}{--656k}{--656x}{--656z}{--656y}{--656v}|\r\n#657|<br/><br/><label>Index Terms--Function: </label>|{\\n6573 }{\\n657a}{--657x}{--657z}{--657y}{--657v}|\r\n#658|<br/><br/><label>Index Terms--Curriculum Objective: </label>|{\\n658a}{--658b}{--658c}{--658d}{--658v}|\r\n#050|<br/><br/><label>LC Class. No.: </label>|{ 050a }{ / 050b }|\r\n#082|<br/><br/><label>Dewey Class. No.: </label>|{ 082a }{ / 082b }|\r\n#080|<br/><br/><label>Universal Decimal Class. No.: </label>|{ 080a }{ 080x }{ / 080b }|\r\n#070|<br/><br/><label>National Agricultural Library Call No.: </label>|{ 070a }{ / 070b }|\r\n#060|<br/><br/><label>National Library of Medicine Call No.: </label>|{ 060a }{ / 060b }|\r\n#074|<br/><br/><label>GPO Item No.: </label>|{ 074a }|\r\n#086|<br/><br/><label>Gov. Doc. Class. No.: </label>|{ 086a }|\r\n#088|<br/><br/><label>Report. No.: </label>|{ 088a }|'),
530
('OPACItemLocation','callnum','callnum|ccode|location|library','Show the shelving location of items in the opac','Choice'),
530
('OPACItemLocation','callnum'),
531
('OpacKohaUrl','1',NULL,'Show \'Powered by Koha\' text on OPAC footer.','Free'),
531
('OpacKohaUrl','1'),
532
('OpacLangSelectorMode','both','top|both|footer','Select the location to display the language selector in OPAC','Choice'),
532
('OpacLangSelectorMode','both'),
533
('OPACLanguages','en',NULL,'Set the default language in the OPAC.','Languages'),
533
('OPACLanguages','en'),
534
('opaclanguagesdisplay','0',NULL,'If ON, enables display of Change Language feature on OPAC','YesNo'),
534
('opaclanguagesdisplay','0'),
535
('opaclayoutstylesheet','opac.css',NULL,'Enter the name of the layout CSS stylesheet to use in the OPAC','Free'),
535
('opaclayoutstylesheet','opac.css'),
536
('OPACLocalCoverImages','0',NULL,'Display local cover images on OPAC search and details pages.','YesNo'),
536
('OPACLocalCoverImages','0'),
537
('OpacLocationBranchToDisplay','holding','holding|home|both','In the OPAC, under location show which branch for Location in the record details.','Choice'),
537
('OpacLocationBranchToDisplay','holding'),
538
('OpacLocationOnDetail','holding','holding|home|both|column','In the OPAC detail, display the shelving location on its own column or under a library columns.', 'Choice'),
538
('OpacLocationOnDetail','holding'),
539
('OPACLoginLabelTextContent','cardnumber',NULL,'Control the text displayed on the login form','Free'),
539
('OPACLoginLabelTextContent','cardnumber'),
540
('OpacMaintenance','0',NULL,'If ON, enables maintenance warning in OPAC','YesNo'),
540
('OpacMaintenance','0'),
541
('OPACMandatoryHoldDates', '', '|start|end|both', 'Define which hold dates are required on OPAC reserve form', 'Choice'),
541
('OPACMandatoryHoldDates', ''),
542
('OpacMaxItemsToDisplay','50',NULL,'Max items to display at the OPAC on a biblio detail','Integer'),
542
('OpacMaxItemsToDisplay','50'),
543
('OpacMetaDescription','',NULL,'This description will show in search engine results (160 characters).','Textarea'),
543
('OpacMetaDescription',''),
544
('OpacMetaRobots', 'noindex,nofollow', NULL, 'Improve search engine crawling.', 'Multiple'),
544
('OpacMetaRobots', 'noindex,nofollow'),
545
('OPACMySummaryHTML','','70|10','Enter the HTML that will appear in a column on the \'my summary\' and \'my checkout history\' tabs when a user is logged in to the OPAC. Enter {BIBLIONUMBER}, {TITLE}, {AUTHOR}, or {ISBN} in place of their respective variables in the HTML. Leave blank to disable.','Textarea'),
545
('OPACMySummaryHTML',''),
546
('OpacNewsLibrarySelect','0',NULL,'Show selector for branches on OPAC news page','YesNo'),
546
('OpacNewsLibrarySelect','0'),
547
('OpacNoItemTypeImages','0',NULL,'If ON, disables itemtype images in the OPAC','YesNo'),
547
('OpacNoItemTypeImages','0'),
548
('OPACNoResultsFound','','70|10','Display this HTML when no results are found for a search in the OPAC','Textarea'),
548
('OPACNoResultsFound',''),
549
('OPACNumbersPreferPhrase','0',NULL,'Control the use of phr operator in callnumber and standard number OPAC searches','YesNo'),
549
('OPACNumbersPreferPhrase','0'),
550
('OPACnumSearchResults','20',NULL,'Specify the maximum number of results to display on a page of results','Integer'),
550
('OPACnumSearchResults','20'),
551
('OPACnumSearchResultsDropdown', '0', NULL, 'Enable option list of number of results per page to show in OPAC search results','YesNo'),
551
('OPACnumSearchResultsDropdown', '0'),
552
('OPACOpenURLItemTypes', '', NULL, 'Show the OpenURL link only for these item types', 'Free'),
552
('OPACOpenURLItemTypes', ''),
553
('OPACOverDrive','0',NULL,'Enable OverDrive integration in the OPAC','YesNo'),
553
('OPACOverDrive','0'),
554
('OpacPasswordChange','1',NULL,'If ON, enables patron-initiated password change in OPAC (disable it when using LDAP auth)','YesNo'),
554
('OpacPasswordChange','1'),
555
('OPACPatronDetails','1',NULL,'If OFF the patron details tab in the OPAC is disabled.','YesNo'),
555
('OPACPatronDetails','1'),
556
('OPACpatronimages','0',NULL,'Enable patron images in the OPAC','YesNo'),
556
('OPACpatronimages','0'),
557
('OPACPlayMusicalInscripts','0',NULL,'If displayed musical inscripts, play midi conversion on the OPAC record details page.','YesNo'),
557
('OPACPlayMusicalInscripts','0'),
558
('OPACPopupAuthorsSearch','0',NULL,'Display the list of authors when clicking on one author.','YesNo'),
558
('OPACPopupAuthorsSearch','0'),
559
('OPACPrivacy','0',NULL,'if ON, allows patrons to define their privacy rules (checkout history)','YesNo'),
559
('OPACPrivacy','0'),
560
('OpacPublic','1',NULL,'Turn on/off public OPAC','YesNo'),
560
('OpacPublic','1'),
561
('opacreadinghistory','1',NULL,'If ON, enables display of Patron Circulation History in OPAC','YesNo'),
561
('opacreadinghistory','1'),
562
('OpacRenewalAllowed','1',NULL,'If ON, users can renew their issues directly from their OPAC account','YesNo'),
562
('OpacRenewalAllowed','1'),
563
('OpacRenewalBranch','checkoutbranch','itemhomebranch|patronhomebranch|checkoutbranch|none','Choose how the branch for an OPAC renewal is recorded in statistics','Choice'),
563
('OpacRenewalBranch','checkoutbranch'),
564
('OPACReportProblem', '0', NULL, 'Allow patrons to submit problem reports for OPAC pages to the library or Koha Administrator', 'YesNo'),
564
('OPACReportProblem', '0'),
565
('OpacResetPassword','0',NULL,'Shows the \'Forgot your password?\' link in the OPAC','YesNo'),
565
('OpacResetPassword','0'),
566
('OPACResultsLibrary', 'homebranch', 'homebranch|holdingbranch', 'Defines whether the OPAC displays the holding or home branch in search results when using XSLT', 'Choice'),
566
('OPACResultsLibrary', 'homebranch'),
567
('OPACResultsMaxItems','1',NULL,'Maximum number of available items displayed in search results','Integer'),
567
('OPACResultsMaxItems','1'),
568
('OPACResultsMaxItemsUnavailable','0',NULL,'Maximum number of unavailable items displayed in search results','Integer'),
568
('OPACResultsMaxItemsUnavailable','0'),
569
('OPACResultsUnavailableGroupingBy','branch','branch|substatus|branchonly','Group OPAC XSLT results by branch and substatus, or substatus only, or branch only','Choice'),
569
('OPACResultsUnavailableGroupingBy','branch'),
570
('OPACSearchForTitleIn','<a href="https://worldcat.org/search?q={TITLE}" target="_blank">Other Libraries (WorldCat)</a>\n<a href="https://scholar.google.com/scholar?q={TITLE}" target="_blank">Other Databases (Google Scholar)</a>\n<a href="https://www.bookfinder.com/search/?author={AUTHOR}&amp;title={TITLE}&amp;st=xl&amp;ac=qr" target="_blank">Online Stores (Bookfinder.com)</a>\n<a href="https://openlibrary.org/search?author=({AUTHOR})&title=({TITLE})" target="_blank">Open Library (openlibrary.org)</a>','70|10','Enter the HTML that will appear in the \'Search for this title in\' box on the detail page in the OPAC.  Enter {TITLE}, {AUTHOR}, or {ISBN} in place of their respective variables in the URL. Leave blank to disable \'More Searches\' menu.','Textarea'),
570
('OPACSearchForTitleIn','<a href="https://worldcat.org/search?q={TITLE}" target="_blank">Other Libraries (WorldCat)</a>\n<a href="https://scholar.google.com/scholar?q={TITLE}" target="_blank">Other Databases (Google Scholar)</a>\n<a href="https://www.bookfinder.com/search/?author={AUTHOR}&amp;title={TITLE}&amp;st=xl&amp;ac=qr" target="_blank">Online Stores (Bookfinder.com)</a>\n<a href="https://openlibrary.org/search?author=({AUTHOR})&title=({TITLE})" target="_blank">Open Library (openlibrary.org)</a>'),
571
('OpacSeparateHoldings','0',NULL,'Separate current branch holdings from other holdings (OPAC)','YesNo'),
571
('OpacSeparateHoldings','0'),
572
('OpacSeparateHoldingsBranch','homebranch','homebranch|holdingbranch','Branch used to separate holdings (OPAC)','Choice'),
572
('OpacSeparateHoldingsBranch','homebranch'),
573
('opacSerialDefaultTab','subscriptions','holdings|serialcollection|subscriptions|titlenotes','Define the default tab for serials in OPAC.','Choice'),
573
('opacSerialDefaultTab','subscriptions'),
574
('OPACSerialIssueDisplayCount','3',NULL,'Number of serial issues to display per subscription in the OPAC','Integer'),
574
('OPACSerialIssueDisplayCount','3'),
575
('OPACShelfBrowser','1',NULL,'Enable/disable Shelf Browser on item details page. WARNING: this feature is very resource consuming on collections with large numbers of items.','YesNo'),
575
('OPACShelfBrowser','1'),
576
('OPACShibOnly','0',NULL,'If ON enables shibboleth only authentication for the opac','YesNo'),
576
('OPACShibOnly','0'),
577
('OPACShowCheckoutName','0',NULL,'Displays in the OPAC the name of patron who has checked out the material. WARNING: Most sites should leave this off. It is intended for corporate or special sites which need to track who has the item.','YesNo'),
577
('OPACShowCheckoutName','0'),
578
('OPACShowHoldQueueDetails','none','none|priority|holds|holds_priority','Show holds details in OPAC','Choice'),
578
('OPACShowHoldQueueDetails','none'),
579
('OPACShowLibraries', '1', NULL, 'If enabled, a "Libraries" link appears in the OPAC pointing to a page with library information', 'YesNo'),
579
('OPACShowLibraries', '1'),
580
('OPACShowMusicalInscripts','0',NULL,'Display musical inscripts on the OPAC record details page when available.','YesNo'),
580
('OPACShowMusicalInscripts','0'),
581
('OPACShowOpenURL', '0', NULL, 'Enable display of OpenURL links in OPAC search results and detail page', 'YesNo'),
581
('OPACShowOpenURL', '0'),
582
('OpacShowRecentComments','0',NULL,'If ON a link to recent comments will appear in the OPAC masthead','YesNo'),
582
('OpacShowRecentComments','0'),
583
('OPACShowSavings', '', 'checkouthistory|summary|user', 'Show on the OPAC the total amount a patron has saved by using a library instead of purchasing, based on replacement prices', 'multiple'),
583
('OPACShowSavings', ''),
584
('OPACShowUnusedAuthorities','1',NULL,'Show authorities that are not being used in the OPAC.','YesNo'),
584
('OPACShowUnusedAuthorities','1'),
585
('OpacStarRatings','all','disable|all|details',NULL,'Choice'),
585
('OpacStarRatings','all'),
586
('OPACSuggestionAutoFill','0',NULL,'Automatically fill OPAC suggestion form with data from Google Books API','YesNo'),
586
('OPACSuggestionAutoFill','0'),
587
('OpacSuggestionManagedBy','1',NULL,'Show the name of the staff member who managed a suggestion in OPAC','YesNo'),
587
('OpacSuggestionManagedBy','1'),
588
('OPACSuggestionMandatoryFields','title',NULL,'Define the mandatory fields for a patron purchase suggestions made via OPAC.','multiple'),
588
('OPACSuggestionMandatoryFields','title'),
589
('OPACSuggestionUnwantedFields','',NULL,'Define the hidden fields for a patron purchase suggestions made via OPAC.','multiple'),
589
('OPACSuggestionUnwantedFields',''),
590
('OpacSuppression','0',NULL,'Turn ON the OPAC Suppression feature, requires further setup, ask your system administrator for details','YesNo'),
590
('OpacSuppression','0'),
591
('OpacSuppressionByIPRange','',NULL,'Restrict the suppression to IP adresses outside of the IP range','Free'),
591
('OpacSuppressionByIPRange',''),
592
('OpacSuppressionRedirect','1',NULL,'Redirect the opac detail page for suppressed records to an explanatory page (otherwise redirect to 404 error page)','YesNo'),
592
('OpacSuppressionRedirect','1'),
593
('opacthemes','bootstrap',NULL,'Define the current theme for the OPAC interface.','Themes'),
593
('opacthemes','bootstrap'),
594
('OpacTopissue','0',NULL,'If ON, enables the \'most popular items\' link on OPAC. Warning, this is an EXPERIMENTAL feature, turning ON may overload your server','YesNo'),
594
('OpacTopissue','0'),
595
('OpacTrustedCheckout', '0', NULL, 'Allow logged in OPAC users to check out to themselves', 'YesNo'),
595
('OpacTrustedCheckout', '0'),
596
('OPACURLOpenInNewWindow','0',NULL,'If ON, URLs in the OPAC open in a new window','YesNo'),
596
('OPACURLOpenInNewWindow','0'),
597
('OPACUserCSS','',NULL,'Add CSS to be included in the OPAC in an embedded <style> tag.','Free'),
597
('OPACUserCSS',''),
598
('OPACUserJS','','70|10','Define custom javascript for inclusion in OPAC','Textarea'),
598
('OPACUserJS',''),
599
('opacuserlogin','1',NULL,'Enable or disable display of user login features','YesNo'),
599
('opacuserlogin','1'),
600
('OPACUserSummary', '1', NULL, 'Show the summary of a logged in user\'s checkouts, overdues, holds and fines on the mainpage', 'YesNo'),
600
('OPACUserSummary', '1'),
601
('OPACViewOthersSuggestions','0',NULL,'If ON, allows all suggestions to be displayed in the OPAC','YesNo'),
601
('OPACViewOthersSuggestions','0'),
602
('OPACVirtualCard','0',NULL,'If ON, the patron virtual library card tab in the OPAC will be enabled','YesNo'),
602
('OPACVirtualCard','0'),
603
('OPACVirtualCardBarcode','code39','code39|code128|ean13|upca|upce|ean8|itf14|qrcode|matrix2of5|industrial2of5|iata2of5|coop2of5','Specify the type of barcode to be used in the patron virtual library card tab in the OPAC','Choice'),
603
('OPACVirtualCardBarcode','code39'),
604
('OPACXSLTDetailsDisplay','default',NULL,'Enable XSL stylesheet control over details page display on OPAC','Free'),
604
('OPACXSLTDetailsDisplay','default'),
605
('OPACXSLTListsDisplay','default',NULL,'Enable XSLT stylesheet control over lists pages display on OPAC','Free'),
605
('OPACXSLTListsDisplay','default'),
606
('OPACXSLTResultsDisplay','default',NULL,'Enable XSL stylesheet control over results page display on OPAC','Free'),
606
('OPACXSLTResultsDisplay','default'),
607
('OpenLibraryCovers','0',NULL,'If ON Openlibrary book covers will be show','YesNo'),
607
('OpenLibraryCovers','0'),
608
('OpenLibrarySearch','0',NULL,'If Yes Open Library search results will show in OPAC','YesNo'),
608
('OpenLibrarySearch','0'),
609
('OpenURLImageLocation', '', NULL, 'Location of image for OpenURL links', 'Free'),
609
('OpenURLImageLocation', ''),
610
('OpenURLResolverURL', '', NULL, 'URL of OpenURL Resolver', 'Free'),
610
('OpenURLResolverURL', ''),
611
('OpenURLText', '', NULL, 'Text of OpenURL links (or image title if OpenURLImageLocation is defined)', 'Free'),
611
('OpenURLText', ''),
612
('OrderPdfFormat','pdfformat::layout3pages',NULL, 'Controls what script is used for printing (basketgroups)','Free'),
612
('OrderPdfFormat','pdfformat::layout3pages'),
613
('OrderPriceRounding','','|nearest_cent','Local preference for rounding orders before calculations to ensure correct calculations','Choice'),
613
('OrderPriceRounding',''),
614
('OverDriveAuthName','',NULL,'Authentication for OverDrive integration, used as fallback when no OverDrive library authnames are set','Free'),
614
('OverDriveAuthName',''),
615
('OverDriveCirculation','0',NULL,'Enable client to see their OverDrive account','YesNo'),
615
('OverDriveCirculation','0'),
616
('OverDriveClientKey','',NULL,'Client key for OverDrive integration','Free'),
616
('OverDriveClientKey',''),
617
('OverDriveClientSecret','',NULL,'Client key for OverDrive integration','Free'),
617
('OverDriveClientSecret',''),
618
('OverDriveLibraryID','', NULL,'Library ID for OverDrive integration','Integer'),
618
('OverDriveLibraryID',''),
619
('OverDrivePasswordRequired','0',NULL,'Does the library require passwords for OverDrive SIP authentication','YesNo'),
619
('OverDrivePasswordRequired','0'),
620
('OverDriveUsername','cardnumber','cardnumber|userid','Which patron information should be passed as OverDrive username','Choice'),
620
('OverDriveUsername','cardnumber'),
621
('OverDriveWebsiteID','', NULL, 'WebsiteID provided by OverDrive', 'Free'),
621
('OverDriveWebsiteID',''),
622
('OverdueNoticeCalendar','0',NULL,'Take the calendar into consideration when generating overdue notices','YesNo'),
622
('OverdueNoticeCalendar','0'),
623
('OverdueNoticeFrom', 'cron', 'cron|item-issuebranch|item-homebranch', 'Organize and send overdue notices by item home library or checkout library', 'Choice'),
623
('OverdueNoticeFrom', 'cron'),
624
('OverduesBlockCirc','noblock','noblock|confirmation|block','When checking out an item should overdues block checkout, generate a confirmation dialogue, or allow checkout','Choice'),
624
('OverduesBlockCirc','noblock'),
625
('OverduesBlockRenewing','allow','allow|blockitem|block','If any of patron checked out documents is late, should renewal be allowed, blocked only on overdue items or blocked on whatever checked out document','Choice'),
625
('OverduesBlockRenewing','allow'),
626
('PassItemMarcToXSLT','0',NULL,'If enabled, item fields in the MARC record will be made available to XSLT sheets. Otherwise they will be removed.','YesNo'),
626
('PassItemMarcToXSLT','0'),
627
('PatronAnonymizeDelay','',NULL,'Delay for anonymizing patrons', 'Integer'),
627
('PatronAnonymizeDelay',''),
628
('PatronAutoComplete','1',NULL,'to guess the patron being entered while typing a patron search for circulation or patron search. Only returns the first 10 results at a time.','YesNo'),
628
('PatronAutoComplete','1'),
629
('PatronDuplicateMatchingAddFields','surname|firstname|dateofbirth', NULL,'A list of fields separated by "|" to deduplicate patrons when created','Free'),
629
('PatronDuplicateMatchingAddFields','surname|firstname|dateofbirth'),
630
('patronimages','0',NULL,'Enable patron images for the staff interface','YesNo'),
630
('patronimages','0'),
631
('PatronQuickAddFields', '', NULL, 'A list of fields separated by "|" to be displayed along with mandatory fields in the patron quick add form if chosen at patron entry', 'Free'),
631
('PatronQuickAddFields', ''),
632
('PatronRemovalDelay','',NULL,'Delay for removing anonymized patrons', 'Integer'),
632
('PatronRemovalDelay',''),
633
('PatronRestrictionTypes','0',NULL,'Specify type of patron restriction being applied', 'YesNo'),
633
('PatronRestrictionTypes','0'),
634
('PatronSelfModificationBorrowerUnwantedField','',NULL,'Name the fields you don\'t want to display when a patron is editing their information via the OPAC.','Free'),
634
('PatronSelfModificationBorrowerUnwantedField',''),
635
('PatronSelfModificationMandatoryField','',NULL,'Define the required fields when a patron is editing their information via the OPAC','Free'),
635
('PatronSelfModificationMandatoryField',''),
636
('PatronSelfRegistration','0',NULL,'If enabled, patrons will be able to register themselves via the OPAC.','YesNo'),
636
('PatronSelfRegistration','0'),
637
('PatronSelfRegistrationAgeRestriction', '', NULL, 'Patron\'s maximum age during self registration. If empty, no age restriction is applied.', 'Integer'),
637
('PatronSelfRegistrationAgeRestriction', ''),
638
('PatronSelfRegistrationAlert','0',NULL,'If enabled, an alter will be shown on staff interface home page when there are self-registered patrons.','YesNo'),
638
('PatronSelfRegistrationAlert','0'),
639
('PatronSelfRegistrationBorrowerMandatoryField','surname|firstname',NULL,'Choose the mandatory fields for a patron\'s account, when registering via the OPAC.','Free'),
639
('PatronSelfRegistrationBorrowerMandatoryField','surname|firstname'),
640
('PatronSelfRegistrationBorrowerUnwantedField','',NULL,'Name the fields you don\'t want to display when registering a new patron via the OPAC.','Free'),
640
('PatronSelfRegistrationBorrowerUnwantedField',''),
641
('PatronSelfRegistrationConfirmEmail', '0', NULL, 'Require users to confirm their email address by entering it twice.', 'YesNo'),
641
('PatronSelfRegistrationConfirmEmail', '0'),
642
('PatronSelfRegistrationDefaultCategory','',NULL,'A patron registered via the OPAC will receive a borrower category code set in this system preference.','Free'),
642
('PatronSelfRegistrationDefaultCategory',''),
643
('PatronSelfRegistrationEmailMustBeUnique', '0', NULL, 'If set, the field borrowers.email will be considered as a unique field on self-registering', 'YesNo'),
643
('PatronSelfRegistrationEmailMustBeUnique', '0'),
644
('PatronSelfRegistrationExpireTemporaryAccountsDelay','0',NULL,'If PatronSelfRegistrationDefaultCategory is enabled, this system preference controls how long a patron can have a temporary status before the account is deleted automatically. It is an integer value representing a number of days to wait before deleting a temporary patron account. Setting it to 0 disables the deleting of temporary accounts.','Integer'),
644
('PatronSelfRegistrationExpireTemporaryAccountsDelay','0'),
645
('PatronSelfRegistrationLibraryList','',NULL,'Only display libraries listed. If empty, all libraries are displayed.','Free'),
645
('PatronSelfRegistrationLibraryList',''),
646
('PatronSelfRegistrationPrefillForm','1',NULL,'Display password and prefill login form after a patron has self-registered','YesNo'),
646
('PatronSelfRegistrationPrefillForm','1'),
647
('PatronSelfRegistrationVerifyByEmail','0',NULL,'If enabled, any patron attempting to register themselves via the OPAC will be required to verify themselves via email to activate their account.','YesNo'),
647
('PatronSelfRegistrationVerifyByEmail','0'),
648
('PatronsPerPage','20','20','Number of Patrons Per Page displayed by default','Integer'),
648
('PatronsPerPage','20'),
649
('PhoneNotification','0',NULL,'If ON, enables generation of phone notifications to be sent by plugins','YesNo'),
649
('PhoneNotification','0'),
650
('PlaceHoldsOnOrdersFromSuggestions','0',NULL,'If ON, enables generation of holds when orders are placed from suggestions','YesNo'),
650
('PlaceHoldsOnOrdersFromSuggestions','0'),
651
('PrefillGuaranteeField', 'phone,email,streetnumber,address,city,state,zipcode,country', NULL, 'Prefill these fields in guarantee member entry form from guarantor patron record', 'Multiple'),
651
('PrefillGuaranteeField', 'phone,email,streetnumber,address,city,state,zipcode,country'),
652
('PrefillItem','0',NULL,'When a new item is added, should it be prefilled with last created item values?','YesNo'),
652
('PrefillItem','0'),
653
('PreservationModule', '0', NULL, 'Enable the preservation module', 'YesNo'),
653
('PreservationModule', '0'),
654
('PreservationNotForLoanDefaultTrainIn', '', NULL, 'Not for loan to apply to items removed from the preservation waiting list', 'TextArea'),
654
('PreservationNotForLoanDefaultTrainIn', ''),
655
('PreservationNotForLoanWaitingListIn', '', NULL, 'Not for loan to apply to items added to the preservation waiting list', 'TextArea'),
655
('PreservationNotForLoanWaitingListIn', ''),
656
('PreserveSerialNotes','1',NULL,'When a new "Expected" issue is generated, should it be prefilled with last created issue notes?','YesNo'),
656
('PreserveSerialNotes','1'),
657
('PreventWithdrawingItemsStatus', '', NULL, 'Prevent the withdrawing of items based on certain statuses', 'multiple'),
657
('PreventWithdrawingItemsStatus', ''),
658
('previousIssuesDefaultSortOrder','asc','asc|desc','Specify the sort order of Previous Issues on the circulation page','Choice'),
658
('previousIssuesDefaultSortOrder','asc'),
659
('PrintNoticesMaxLines','0',NULL,'If greater than 0, sets the maximum number of lines an overdue notice will print. If the number of items is greater than this number, the notice will end with a warning asking the borrower to check their online account for a full list of overdue items.','Integer'),
659
('PrintNoticesMaxLines','0'),
660
('PrivacyPolicyConsent','','Enforced|Permissive|Disabled','Data privacy policy consent in the OPAC', 'Choice'),
660
('PrivacyPolicyConsent',''),
661
('PrivacyPolicyURL','',NULL,'This URL is used in messages about GDPR consents.', 'Free'),
661
('PrivacyPolicyURL',''),
662
('ProcessingFeeNote', '', NULL, 'Set the text to be recorded in the column note, table accountlines when the processing fee (defined in item type) is applied', 'textarea'),
662
('ProcessingFeeNote', ''),
663
('ProtectSuperlibrarianPrivileges','1',NULL,'If enabled, non-superlibrarians cannot set superlibrarian privileges','YesNo'),
663
('ProtectSuperlibrarianPrivileges','1'),
664
('Pseudonymization','0',NULL,'If enabled patrons and transactions will be copied in a separate table for statistics purpose','YesNo'),
664
('Pseudonymization','0'),
665
('PseudonymizationPatronFields','','title,city,state,zipcode,country,branchcode,categorycode,dateenrolled,sex,sort1,sort2','Patron fields to copy to the pseudonymized_transactions table','multiple'),
665
('PseudonymizationPatronFields',''),
666
('PseudonymizationTransactionFields','','datetime,branchcode,transaction_type,itemnumber,itemtype,holdingbranch,location,itemcallnumber,ccode','Transaction fields to copy to the pseudonymized_transactions table','multiple'),
666
('PseudonymizationTransactionFields',''),
667
('PurgeListShareInvitesOlderThan', '14', NULL, 'If not empty, number of days used when deleting unaccepted list share invites', 'Integer'),
667
('PurgeListShareInvitesOlderThan', '14'),
668
('PurgeSuggestionsOlderThan', '', NULL, 'If this script is called without the days parameter', 'Integer'),
668
('PurgeSuggestionsOlderThan', ''),
669
('QueryAutoTruncate','1',NULL,'If ON, query truncation is enabled by default','YesNo'),
669
('QueryAutoTruncate','1'),
670
('QueryFuzzy','1',NULL,'If ON, enables fuzzy option for searches','YesNo'),
670
('QueryFuzzy','1'),
671
('QueryRegexEscapeOptions', 'escape', 'dont_escape|escape|unescape_escaped', 'Escape option for regexps delimiters in Elasicsearch queries.', 'Choice'),
671
('QueryRegexEscapeOptions', 'escape'),
672
('QueryStemming','1',NULL,'If ON, enables query stemming','YesNo'),
672
('QueryStemming','1'),
673
('QueryWeightFields','1',NULL,'If ON, enables field weighting','YesNo'),
673
('QueryWeightFields','1'),
674
('QuoteOfTheDay','','intranet,opac','Enable or disable display of Quote of the Day on the OPAC and staff interface home page','multiple'),
674
('QuoteOfTheDay',''),
675
('RandomizeHoldsQueueWeight','0',NULL,'if ON, the holds queue in circulation will be randomized, either based on all location codes, or by the location codes specified in StaticHoldsQueueWeight','YesNo'),
675
('RandomizeHoldsQueueWeight','0'),
676
('RealTimeHoldsQueue', '0', NULL, 'Enable updating the holds queue in real time', 'YesNo'),
676
('RealTimeHoldsQueue', '0'),
677
('RecallsLog','1',NULL,'If ON, log create/cancel/expire/fulfill actions on recalls','YesNo'),
677
('RecallsLog','1'),
678
('RecallsMaxPickUpDelay','7',NULL,'Define the maximum time a recall can be awaiting pickup','Integer'),
678
('RecallsMaxPickUpDelay','7'),
679
('RecordLocalUseOnReturn','0',NULL,'If ON, statistically record returns of unissued items as local use, instead of return','YesNo'),
679
('RecordLocalUseOnReturn','0'),
680
('RecordStaffUserOnCheckout', '0', NULL, 'If enabled, when an item is checked out, the user who checked out the item is recorded', 'YesNo'),
680
('RecordStaffUserOnCheckout', '0'),
681
('RedirectGuaranteeEmail', '0', NULL, 'Enable the ability to redirect guarantee email messages to guarantor.', 'YesNo'),
681
('RedirectGuaranteeEmail', '0'),
682
('RedirectToSoleResult', '1', NULL, 'When a catalog search via the staff interface or the OPAC returns only one record, redirect to the result.', 'YesNo'),
682
('RedirectToSoleResult', '1'),
683
('Reference_NFL_Statuses','1|2',NULL,'Contains not for loan statuses considered as available for reference','Free'),
683
('Reference_NFL_Statuses','1|2'),
684
('RefundLostOnReturnControl','CheckinLibrary','CheckinLibrary|ItemHomeBranch|ItemHoldingBranch','If a lost item is returned, choose which branch to pick rules for refunding.','Choice'),
684
('RefundLostOnReturnControl','CheckinLibrary'),
685
('RenewAccruingItemInOpac','0',NULL,'If enabled, when the fines on an item accruing is paid off in the OPAC via a payment plugin, attempt to renew that item. If the syspref "RenewalPeriodBase" is set to "due date", renewed items may still be overdue','YesNo'),
685
('RenewAccruingItemInOpac','0'),
686
('RenewAccruingItemWhenPaid','0',NULL,'If enabled, when the fines on an item accruing is paid off, attempt to renew that item. If the syspref "RenewalPeriodBase" is set to "due date", renewed items may still be overdue','YesNo'),
686
('RenewAccruingItemWhenPaid','0'),
687
('RenewalLog','0',NULL,'If ON, log information about renewals','YesNo'),
687
('RenewalLog','0'),
688
('RenewalSendNotice','0',NULL,NULL,'YesNo'),
688
('RenewalSendNotice','0'),
689
('RenewSerialAddsSuggestion','0',NULL,'If ON, adds a new suggestion at serial subscription renewal','YesNo'),
689
('RenewSerialAddsSuggestion','0'),
690
('RentalFeesCheckoutConfirmation', '0', NULL, 'Allow user to confirm when checking out an item with rental fees.', 'YesNo'),
690
('RentalFeesCheckoutConfirmation', '0'),
691
('ReplytoDefault','',NULL,'Use this email address as the replyto in emails','Free'),
691
('ReplytoDefault',''),
692
('ReportsExportFormatODS','1',NULL,'Show ODS download in Reports','YesNo'),
692
('ReportsExportFormatODS','1'),
693
('ReportsExportLimit','',NULL,'Limit for report downloads','Integer'),
693
('ReportsExportLimit',''),
694
('ReportsLog','0',NULL,'If ON, log information about reports.','YesNo'),
694
('ReportsLog','0'),
695
('RequireCashRegister','0',NULL,'Require a cash register when collecting a payment','YesNo'),
695
('RequireCashRegister','0'),
696
('RequireChoosingExistingAuthority','0',NULL,'Require existing authority selection in controlled fields during cataloging.','YesNo'),
696
('RequireChoosingExistingAuthority','0'),
697
('RequirePaymentType','0',NULL,'Require staff to select a payment type when a payment is made','YesNo'),
697
('RequirePaymentType','0'),
698
('RequireStrongPassword','1',NULL,'Require a strong login password for staff and patrons','YesNo'),
698
('RequireStrongPassword','1'),
699
('ReservesControlBranch','PatronLibrary','ItemHomeLibrary|PatronLibrary','Branch checked for members reservations rights','Choice'),
699
('ReservesControlBranch','PatronLibrary'),
700
('ReservesMaxPickUpDelay','7',NULL,'Define the Maximum delay to pick up an item on hold','Integer'),
700
('ReservesMaxPickUpDelay','7'),
701
('ReservesNeedReturns','1',NULL,'If ON, a hold placed on an item available in this library must be checked-in, otherwise, a hold on a specific item, that is in the library & available is considered available','YesNo'),
701
('ReservesNeedReturns','1'),
702
('RESTAPIRenewalBranch','apiuserbranch','itemhomebranch|patronhomebranch|checkoutbranch|apiuserbranch|none','Choose how the branch for an API renewal is recorded in statistics','Choice'),
702
('RESTAPIRenewalBranch','apiuserbranch'),
703
('RESTBasicAuth','0',NULL,'If enabled, Basic authentication is enabled for the REST API.','YesNo'),
703
('RESTBasicAuth','0'),
704
('RESTdefaultPageSize','20',NULL,'Default page size for endpoints listing objects','Integer'),
704
('RESTdefaultPageSize','20'),
705
('RESTOAuth2ClientCredentials','0',NULL,'If enabled, the OAuth2 client credentials flow is enabled for the REST API.','YesNo'),
705
('RESTOAuth2ClientCredentials','0'),
706
('RESTPublicAnonymousRequests','1',NULL,'If enabled, the API will allow anonymous access to public routes that don\'t require authenticated access.','YesNo'),
706
('RESTPublicAnonymousRequests','1'),
707
('RESTPublicAPI','1',NULL,'If enabled, the REST API will expose the /public endpoints.','YesNo'),
707
('RESTPublicAPI','1'),
708
('RestrictedPageContent','',NULL,'HTML content of the restricted page','TextArea'),
708
('RestrictedPageContent',''),
709
('RestrictedPageLocalIPs','',NULL,'Beginning of IP addresses considered as local (comma separated ex: "127.0.0,127.0.2")','Free'),
709
('RestrictedPageLocalIPs',''),
710
('RestrictedPageTitle','',NULL,'Title of the restricted page (breadcrumb and header)','Free'),
710
('RestrictedPageTitle',''),
711
('RestrictionBlockRenewing','0',NULL,'If patron is restricted, should renewal be allowed or blocked','YesNo'),
711
('RestrictionBlockRenewing','0'),
712
('RestrictPatronsWithFailedNotices', '0', NULL, 'If enabled then when SMS and email notices fail sending at the Koha level then a debarment will be applied to a patrons account', 'YesNo'),
712
('RestrictPatronsWithFailedNotices', '0'),
713
('RetainCatalogSearchTerms', '1', NULL, 'If enabled, searches entered into the catalog search bar will be retained', 'YesNo'),
713
('RetainCatalogSearchTerms', '1'),
714
('RetainPatronsSearchTerms', '1', NULL, 'If enabled, searches entered into the checkout and patrons search bar will be retained', 'YesNo'),
714
('RetainPatronsSearchTerms', '1'),
715
('ReturnBeforeExpiry','0',NULL,'If ON, checkout will be prevented if returndate is after patron card expiry','YesNo'),
715
('ReturnBeforeExpiry','0'),
716
('ReturnLog','1',NULL,'If ON, enables the circulation (returns) log','YesNo'),
716
('ReturnLog','1'),
717
('ReturnpathDefault','',NULL,'Use this email address as return path or bounce address for undeliverable emails','Free'),
717
('ReturnpathDefault',''),
718
('RisExportAdditionalFields', '', NULL, 'Define additional RIS tags to export from MARC records in YAML format as an associative array with either a marc tag/subfield combination as the value, or a list of tag/subfield combinations.', 'textarea'),
718
('RisExportAdditionalFields', ''),
719
('RoundFinesAtPayment','0', NULL,'If enabled any fines with fractions of a cent will be rounded to the nearest cent when payments are collected. e.g. 1.004 will be paid off by a 1.00 payment','YesNo'),
719
('RoundFinesAtPayment','0'),
720
('RoutingListAddReserves','0',NULL,'If ON the patrons on routing lists are automatically added to holds on the issue.','YesNo'),
720
('RoutingListAddReserves','0'),
721
('RoutingSerials','1',NULL,'If ON, serials routing is enabled','YesNo'),
721
('RoutingSerials','1'),
722
('SavedSearchFilters', '0', NULL, 'Allow staff with permission to create/edit custom search filters', 'YesNo'),
722
('SavedSearchFilters', '0'),
723
('SCOAllowCheckin','0',NULL,'If enabled, patrons may return items through the Web-based Self Checkout','YesNo'),
723
('SCOAllowCheckin','0'),
724
('SCOBatchCheckoutsValidCategories','',NULL,'Patron categories allowed to checkout in a batch while logged into Self Checkout','Free'),
724
('SCOBatchCheckoutsValidCategories',''),
725
('SCOLoadCheckoutsByDefault','1',NULL,'If enabled, load the list of a patrons checkouts when they log in to the Self Checkout','YesNo'),
725
('SCOLoadCheckoutsByDefault','1'),
726
('SCOUserCSS','',NULL,'Add CSS to be included in the SCO module in an embedded <style> tag.','Free'),
726
('SCOUserCSS',''),
727
('SCOUserJS','',NULL,'Define custom javascript for inclusion in the SCO module','Free'),
727
('SCOUserJS',''),
728
('SearchCancelledAndInvalidISBNandISSN','0',NULL,'Enable search for cancelled or invalid forms of ISBN/ISSN when performing ISBN/ISSN search (when using ES)','YesNo'),
728
('SearchCancelledAndInvalidISBNandISSN','0'),
729
('SearchEngine','Zebra','Elasticsearch|Zebra','Search Engine','Choice'),
729
('SearchEngine','Zebra'),
730
('SearchLimitLibrary', 'homebranch', 'homebranch|holdingbranch|both', 'When limiting search results with a library or library group, use the item\'s home library, or holding library, or both.', 'Choice'),
730
('SearchLimitLibrary', 'homebranch'),
731
('SearchMyLibraryFirst','0',NULL,'If ON, OPAC searches return results limited by the user\'s library by default if they are logged in','YesNo'),
731
('SearchMyLibraryFirst','0'),
732
('SearchWithISBNVariations','0',NULL,'If enabled, search on all variations of the ISBN','YesNo'),
732
('SearchWithISBNVariations','0'),
733
('SearchWithISSNVariations','0',NULL,'If enabled, search on all variations of the ISSN','YesNo'),
733
('SearchWithISSNVariations','0'),
734
('SelfCheckAllowByIPRanges','',NULL,'(Leave blank if not used. Use ranges or simple ip addresses separated by spaces, like <code>192.168.1.1 192.168.0.0/24</code>.)','Short'),
734
('SelfCheckAllowByIPRanges',''),
735
('SelfCheckInModule', '0', NULL, 'Enable the standalone self-checkin module.', 'YesNo'),
735
('SelfCheckInModule', '0'),
736
('SelfCheckInTimeout','120',NULL,'Define the number of seconds before the self check-in module times out.','Integer'),
736
('SelfCheckInTimeout','120'),
737
('SelfCheckInUserCSS','',NULL,'Add CSS to be included in the self check-in module in an embedded <style> tag.','Free'),
737
('SelfCheckInUserCSS',''),
738
('SelfCheckInUserJS','',NULL,'Define custom javascript for inclusion in the self check-in module.','Free'),
738
('SelfCheckInUserJS',''),
739
('SelfCheckoutByLogin','1',NULL,'Have patrons login into the web-based self checkout system with their username/password or their cardnumber','YesNo'),
739
('SelfCheckoutByLogin','1'),
740
('SelfCheckReceiptPrompt','1',NULL,'If ON, print receipt dialog pops up when self checkout is finished','YesNo'),
740
('SelfCheckReceiptPrompt','1'),
741
('SelfCheckTimeout','120',NULL,'Define the number of seconds before the Web-based Self Checkout times out a patron','Integer'),
741
('SelfCheckTimeout','120'),
742
('SendAllEmailsTo','',NULL,'All emails will be redirected to this email if it is not empty','Free'),
742
('SendAllEmailsTo',''),
743
('SeparateHoldings','0',NULL,'Separate current branch holdings from other holdings','YesNo'),
743
('SeparateHoldings','0'),
744
('SeparateHoldingsBranch','homebranch','homebranch|holdingbranch','Branch used to separate holdings','Choice'),
744
('SeparateHoldingsBranch','homebranch'),
745
('SerialsDefaultEmailAddress', '', NULL, 'Default email address used as reply-to for notices sent by the serials module.', 'Free'),
745
('SerialsDefaultEmailAddress', ''),
746
('SerialsDefaultReplyTo', '', NULL, 'Default email address that serials notices are sent from.', 'Free'),
746
('SerialsDefaultReplyTo', ''),
747
('SerialsSearchResultsLimit', '', NULL, 'Serials search results limit', 'Integer'),
747
('SerialsSearchResultsLimit', ''),
748
('SessionRestrictionByIP','1',NULL,'Check for change in remote IP address for session security. Disable only when remote IP address changes frequently.','YesNo'),
748
('SessionRestrictionByIP','1'),
749
('SessionStorage','mysql','mysql|Pg|tmp','Use database or a temporary file for storing session data','Choice'),
749
('SessionStorage','mysql'),
750
('ShelfBrowserUsesCcode','1',NULL,'Use the item collection code when finding items for the shelf browser.','YesNo'),
750
('ShelfBrowserUsesCcode','1'),
751
('ShelfBrowserUsesHomeBranch','1',NULL,'Use the item home branch when finding items for the shelf browser.','YesNo'),
751
('ShelfBrowserUsesHomeBranch','1'),
752
('ShelfBrowserUsesLocation','1',NULL,'Use the item location when finding items for the shelf browser.','YesNo'),
752
('ShelfBrowserUsesLocation','1'),
753
('ShowAllCheckins', '0', NULL, 'Show all checkins', 'YesNo'),
753
('ShowAllCheckins', '0'),
754
('ShowComponentRecords', 'nowhere', 'nowhere|staff|opac|both','In which record detail pages to show list of the component records, as linked via 773','Choice'),
754
('ShowComponentRecords', 'nowhere'),
755
('ShowHeadingUse', '0', NULL, 'Show whether MARC21 authority record contains an established heading that conforms to descriptive cataloguing rules, and can therefore be used as a main/added entry, or subject, or series title', 'YesNo'),
755
('ShowHeadingUse', '0'),
756
('showLastPatron','0',NULL,'If ON, enables the last patron feature in the intranet','YesNo'),
756
('showLastPatron','0'),
757
('showLastPatronCount', '10', NULL, 'How many patrons should showLastPatron remember', 'Integer'),
757
('showLastPatronCount', '10'),
758
('ShowPatronFirstnameIfDifferentThanPreferredname','0',NULL,'If ON, a patrons firstname will also show in search results if different than their preferred name','YesNo'),
758
('ShowPatronFirstnameIfDifferentThanPreferredname','0'),
759
('ShowPatronImageInWebBasedSelfCheck','0',NULL,'If ON, displays patron image when a patron uses web-based self-checkout','YesNo'),
759
('ShowPatronImageInWebBasedSelfCheck','0'),
760
('ShowReviewer','full','none|full|first|surname|firstandinitial|username','Choose how a commenter\'s identity is presented alongside comments in the OPAC','Choice'),
760
('ShowReviewer','full'),
761
('ShowReviewerPhoto','1',NULL,'If ON, photo of reviewer will be shown beside comments in OPAC','YesNo'),
761
('ShowReviewerPhoto','1'),
762
('SIP2AddOpacMessagesToScreenMessage','1',NULL,'If enabled, patron OPAC messages will be included in the SIP2 screen message','YesNo'),
762
('SIP2AddOpacMessagesToScreenMessage','1'),
763
('SIP2SortBinMapping','',NULL,'Use the following mappings to determine the sort_bin of a returned item. The mapping should be on the form "branchcode:item field:item field value:sort bin number", with one mapping per line.','Free'),
763
('SIP2SortBinMapping',''),
764
('SkipHoldTrapOnNotForLoanValue','',NULL,'If set, Koha will never trap items for hold with this notforloan value','Integer'),
764
('SkipHoldTrapOnNotForLoanValue',''),
765
('SlipCSS','',NULL,'Slips CSS url.','Free'),
765
('SlipCSS',''),
766
('SMSSendAdditionalOptions', '', NULL, 'Additional SMS::Send parameters used to send SMS messages', 'Free'),
766
('SMSSendAdditionalOptions', ''),
767
('SMSSendDriver','',NULL,'Sets which SMS::Send driver is used to send SMS messages.','Free'),
767
('SMSSendDriver',''),
768
('SMSSendMaxChar', '', NULL, 'Add a limit for the number of characters in SMS messages', 'Integer'),
768
('SMSSendMaxChar', ''),
769
('SMSSendPassword', '', NULL, 'Password used to send SMS messages', 'Free'),
769
('SMSSendPassword', ''),
770
('SMSSendUsername', '', NULL, 'Username/Login used to send SMS messages', 'Free'),
770
('SMSSendUsername', ''),
771
('SocialNetworks','','facebook|linkedin|email','Enable/Disable social networks links in opac detail pages','Choice'),
771
('SocialNetworks',''),
772
('SpecifyDueDate','1',NULL,'Define whether to display "Specify Due Date" form in Circulation','YesNo'),
772
('SpecifyDueDate','1'),
773
('SpecifyReturnDate','1',NULL,'Define whether to display "Specify Return Date" form in Circulation','YesNo'),
773
('SpecifyReturnDate','1'),
774
('SpineLabelAutoPrint','0',NULL,'If this setting is turned on, a print dialog will automatically pop up for the quick spine label printer.','YesNo'),
774
('SpineLabelAutoPrint','0'),
775
('SpineLabelFormat','<itemcallnumber><copynumber>','30|10','This preference defines the format for the quick spine label printer. Just list the fields you would like to see in the order you would like to see them, surrounded by <>, for example <itemcallnumber>.','Textarea'),
775
('SpineLabelFormat','<itemcallnumber><copynumber>'),
776
('SpineLabelShowPrintOnBibDetails','0',NULL,'If turned on, a "Print label" link will appear for each item on the bib details page in the staff interface.','YesNo'),
776
('SpineLabelShowPrintOnBibDetails','0'),
777
('staffClientBaseURL','',NULL,'Specify the base URL of the staff interface starting with http:// or https://. Do not include a trailing slash in the URL. (This must be filled in correctly for CAS, svc, and load_testing to work.)','Free'),
777
('staffClientBaseURL',''),
778
('StaffHighlightedWords','1',NULL,'Highlight search terms on staff interface','YesNo'),
778
('StaffHighlightedWords','1'),
779
('StaffInterfaceLanguages','en',NULL,'Set the default language in the staff interface.','Languages'),
779
('StaffInterfaceLanguages','en'),
780
('StaffLangSelectorMode','footer','top|both|footer','Select the location to display the language selector in staff interface','Choice'),
780
('StaffLangSelectorMode','footer'),
781
('StaffLoginLibraryBasedOnIP', '1',NULL, 'Set the logged in library for the user based on their current IP','YesNo'),
781
('StaffLoginLibraryBasedOnIP', '1'),
782
('StaffLoginRestrictLibraryByIP','0',NULL,'If ON, IP authentication is enabled, blocking access to the staff interface from unauthorized IP addresses based on branch','YesNo'),
782
('StaffLoginRestrictLibraryByIP','0'),
783
('StaffSearchResultsDisplayBranch','holdingbranch','holdingbranch|homebranch','Controls the display of the home or holding branch for staff search results','Choice'),
783
('StaffSearchResultsDisplayBranch','holdingbranch'),
784
('StaffSerialIssueDisplayCount','3',NULL,'Number of serial issues to display per subscription in the staff interface','Integer'),
784
('StaffSerialIssueDisplayCount','3'),
785
('staffShibOnly','0',NULL,'If ON enables shibboleth only authentication for the staff client','YesNo'),
785
('staffShibOnly','0'),
786
('StaticHoldsQueueWeight','0',NULL,'Specify a list of library location codes separated by commas -- the list of codes will be traversed and weighted with first values given higher weight for holds fulfillment -- alternatively, if RandomizeHoldsQueueWeight is set, the list will be randomly selective','Integer'),
786
('StaticHoldsQueueWeight','0'),
787
('StatisticsFields','location|itype|ccode', NULL, 'Define Fields (from the items table) used for statistics members','Free'),
787
('StatisticsFields','location|itype|ccode'),
788
('StockRotation','0',NULL,'If ON, enables the stock rotation module','YesNo'),
788
('StockRotation','0'),
789
('StoreLastBorrower','0',NULL,'Defines the number of borrowers stored per item in the items_last_borrower table','Integer'),
789
('StoreLastBorrower','0'),
790
('StripWhitespaceChars','0',NULL,'Strip leading and trailing whitespace characters and inner newlines from input fields when cataloguing bibliographic and authority records.','YesNo'),
790
('StripWhitespaceChars','0'),
791
('SubfieldsToAllowForRestrictedBatchmod','',NULL,'Define a list of subfields for which edition is authorized when items_batchmod_restricted permission is enabled, separated by spaces. Example: 995$f 995$h 995$j','Free'),
791
('SubfieldsToAllowForRestrictedBatchmod',''),
792
('SubfieldsToAllowForRestrictedEditing','',NULL,'Define a list of subfields for which edition is authorized when edit_items_restricted permission is enabled, separated by spaces. Example: 995$f 995$h 995$j','Free'),
792
('SubfieldsToAllowForRestrictedEditing',''),
793
('SubfieldsToUseWhenPrefill','',NULL,'Define a list of subfields to use when prefilling items (separated by space)','Free'),
793
('SubfieldsToUseWhenPrefill',''),
794
('SubscriptionDuplicateDroppedInput','',NULL,'List of fields which must not be rewritten when a subscription is duplicated (Separated by pipe |)','Free'),
794
('SubscriptionDuplicateDroppedInput',''),
795
('SubscriptionHistory','simplified','simplified|full','Define the display preference for serials issue history in OPAC','Choice'),
795
('SubscriptionHistory','simplified'),
796
('SubscriptionLog','1',NULL,'If ON, enables subscriptions log','YesNo'),
796
('SubscriptionLog','1'),
797
('suggestion','1',NULL,'If ON, enables patron suggestions feature in OPAC','YesNo'),
797
('suggestion','1'),
798
('suggestionPatronCategoryExceptions', '', NULL, 'List the patron categories not affected by suggestion system preference if on', 'Free'),
798
('suggestionPatronCategoryExceptions', ''),
799
('SuggestionsLog','0',NULL,'If ON, log purchase suggestion changes','YesNo'),
799
('SuggestionsLog','0'),
800
('SuspendHoldsIntranet','1',NULL,'Allow holds to be suspended from the intranet.','YesNo'),
800
('SuspendHoldsIntranet','1'),
801
('SuspendHoldsOpac','1',NULL,'Allow holds to be suspended from the OPAC.','YesNo'),
801
('SuspendHoldsOpac','1'),
802
('SuspensionsCalendar','noSuspensionsWhenClosed','ignoreCalendar|noSuspensionsWhenClosed','Specify whether to use the Calendar in calculating suspension expiration','Choice'),
802
('SuspensionsCalendar','noSuspensionsWhenClosed'),
803
('SvcMaxReportRows','10',NULL,'Maximum number of rows to return via the report web service.','Integer'),
803
('SvcMaxReportRows','10'),
804
('SwitchOnSiteCheckouts','0',NULL,'Automatically switch an on-site checkout to a normal checkout','YesNo'),
804
('SwitchOnSiteCheckouts','0'),
805
('SyndeticsAuthorNotes','0',NULL,'Display Notes about the Author on OPAC from Syndetics','YesNo'),
805
('SyndeticsAuthorNotes','0'),
806
('SyndeticsAwards','0',NULL,'Display Awards on OPAC from Syndetics','YesNo'),
806
('SyndeticsAwards','0'),
807
('SyndeticsClientCode','0',NULL,'Client Code for using Syndetics Solutions content','Free'),
807
('SyndeticsClientCode','0'),
808
('SyndeticsCoverImages','0',NULL,'Display Cover Images from Syndetics','YesNo'),
808
('SyndeticsCoverImages','0'),
809
('SyndeticsCoverImageSize','MC','MC|LC','Choose the size of the Syndetics Cover Image to display on the OPAC detail page, MC is Medium, LC is Large','Choice'),
809
('SyndeticsCoverImageSize','MC'),
810
('SyndeticsEditions','0',NULL,'Display Editions from Syndetics','YesNo'),
810
('SyndeticsEditions','0'),
811
('SyndeticsEnabled','0',NULL,'Turn on Syndetics Enhanced Content','YesNo'),
811
('SyndeticsEnabled','0'),
812
('SyndeticsExcerpt','0',NULL,'Display Excerpts and first chapters on OPAC from Syndetics','YesNo'),
812
('SyndeticsExcerpt','0'),
813
('SyndeticsReviews','0',NULL,'Display Reviews on OPAC from Syndetics','YesNo'),
813
('SyndeticsReviews','0'),
814
('SyndeticsSeries','0',NULL,'Display Series information on OPAC from Syndetics','YesNo'),
814
('SyndeticsSeries','0'),
815
('SyndeticsSummary','0',NULL,'Display Summary Information from Syndetics','YesNo'),
815
('SyndeticsSummary','0'),
816
('SyndeticsTOC','0',NULL,'Display Table of Content information from Syndetics','YesNo'),
816
('SyndeticsTOC','0'),
817
('TagsEnabled','1',NULL,'Enables or disables all tagging features.  This is the main switch for tags.','YesNo'),
817
('TagsEnabled','1'),
818
('TagsExternalDictionary','',NULL,'Path on server to local ispell executable, used to set $Lingua::Ispell::path  This dictionary is used as a "whitelist" of pre-allowed tags.',''),
818
('TagsExternalDictionary',''),
819
('TagsInputOnDetail','1',NULL,'Allow users to input tags from the detail page.','YesNo'),
819
('TagsInputOnDetail','1'),
820
('TagsInputOnList','0',NULL,'Allow users to input tags from the search results list.','YesNo'),
820
('TagsInputOnList','0'),
821
('TagsModeration','0',NULL,'Require tags from patrons to be approved before becoming visible.','YesNo'),
821
('TagsModeration','0'),
822
('TagsShowOnDetail','10',NULL,'Number of tags to display on detail page.  0 is off.','Integer'),
822
('TagsShowOnDetail','10'),
823
('TagsShowOnList','6',NULL,'Number of tags to display on search results list.  0 is off.','Integer'),
823
('TagsShowOnList','6'),
824
('TalkingTechItivaPhoneNotification','0',NULL,'If ON, enables Talking Tech I-tiva phone notifications','YesNo'),
824
('TalkingTechItivaPhoneNotification','0'),
825
('TaxRates','0',NULL,'Default Goods and Services tax rate NOT in %, but in numeric form (0.12 for 12%), set to 0 to disable GST','Integer'),
825
('TaxRates','0'),
826
('template','prog',NULL,'Define the preferred staff interface template','Themes'),
826
('template','prog'),
827
('ThingISBN','0',NULL,'Use with FRBRizeEditions. If ON, Koha will use the ThingISBN web service in the Editions tab on the detail pages.','YesNo'),
827
('ThingISBN','0'),
828
('TimeFormat','24hr','12hr|24hr','Defines the global time format for visual output.','Choice'),
828
('TimeFormat','24hr'),
829
('timeout','1d',NULL,'Inactivity timeout for cookies authentication','Free'),
829
('timeout','1d'),
830
('TitleHoldFeeStrategy','highest','highest|lowest|most_common','Strategy for calculating fees on title-level holds when items have different fees: highest = charge maximum fee, lowest = charge minimum fee, most_common = charge most frequently occurring fee','Choice'),
830
('TitleHoldFeeStrategy','highest'),
831
('todaysIssuesDefaultSortOrder','desc','asc|desc','Specify the sort order of Todays Issues on the circulation page','Choice'),
831
('todaysIssuesDefaultSortOrder','desc'),
832
('TraceCompleteSubfields','0',NULL,'Force subject tracings to only match complete subfields.','YesNo'),
832
('TraceCompleteSubfields','0'),
833
('TraceSubjectSubdivisions','0',NULL,'Create searches on all subdivisions for subject tracings.','YesNo'),
833
('TraceSubjectSubdivisions','0'),
834
('TrackClicks','0',NULL,'Track links clicked','Integer'),
834
('TrackClicks','0'),
835
('TrackLastPatronActivityTriggers','',NULL,'If set, the field borrowers.lastseen will be updated everytime a patron performs a selected action','multiple'),
835
('TrackLastPatronActivityTriggers',''),
836
('TransfersBlockCirc','1',NULL,'Should the transfer modal block circulation staff from continuing scanning items','YesNo'),
836
('TransfersBlockCirc','1'),
837
('TransfersLog','0',NULL,'If enabled, log item transfer changes','YesNo'),
837
('TransfersLog','0'),
838
('TransfersMaxDaysWarning','3',NULL,'Define the days before a transfer is suspected of having a problem','Integer'),
838
('TransfersMaxDaysWarning','3'),
839
('TransferWhenCancelAllWaitingHolds','0',NULL,'Transfer items when cancelling all waiting holds','YesNo'),
839
('TransferWhenCancelAllWaitingHolds','0'),
840
('TranslateNotices','0',NULL, 'Allow notices to be translated','YesNo'),
840
('TranslateNotices','0'),
841
('TrapHoldsOnOrder','1',NULL,'If enabled, Koha will trap holds for on order items ( notforloan < 0 )','YesNo'),
841
('TrapHoldsOnOrder','1'),
842
('TwoFactorAuthentication', 'disabled', 'enforced|enabled|disabled', 'Enables two-factor authentication', 'Choice'),
842
('TwoFactorAuthentication', 'disabled'),
843
('UNIMARCAuthorityField100','afrey50      ba0',NULL,'Define the contents of UNIMARC authority control field 100 position 08-35','Textarea'),
843
('UNIMARCAuthorityField100','afrey50      ba0'),
844
('UNIMARCAuthorsFacetsSeparator',', ',NULL,'UNIMARC authors facets separator','short'),
844
('UNIMARCAuthorsFacetsSeparator',', '),
845
('UNIMARCField100Language','fre',NULL,'UNIMARC field 100 default language','short'),
845
('UNIMARCField100Language','fre'),
846
('UniqueItemFields','barcode',NULL,'Pipe-separated list of fields that should be unique (used in acquisition module for item creation). Fields must be valid SQL column names of items table','Free'),
846
('UniqueItemFields','barcode'),
847
('UnseenRenewals','0',NULL,'Allow renewals to be recorded as "unseen" by the library, and count against the patrons unseen renewals limit.','YesNo'),
847
('UnseenRenewals','0'),
848
('UnsubscribeReflectionDelay','',NULL,'Delay for locking unsubscribers', 'Integer'),
848
('UnsubscribeReflectionDelay',''),
849
('UpdateItemLocationOnCheckin', '', NULL, 'This is a list of value pairs.\n Examples:\n\nPROC: FIC - causes an item in the Processing Center location to be updated into the Fiction location on check in.\nFIC: GEN - causes an item in the Fiction location to be updated into the General stacks location on check in.\n_BLANK_:FIC - causes an item that has no location to be updated into the Fiction location on check in.\nFIC: _BLANK_ - causes an item in location FIC to be updated to a blank location on check in.\n_ALL_:FIC - causes all items to be updated into the Fiction location on check in.\nPROC: _PERM_ - causes an item that is in the Processing Center to be updated to it\'s permanent location.\n\nGeneral rule: if the location value on the left matches the item\'s current location, it will be updated to match the location value on the right.\nNote: PROC and CART are special values, for these locations only can location and permanent_location differ, in all other cases an update will affect both. Items in the CART location will be returned to their permanent location on checkout.\n\nThe special term _BLANK_ may be used on either side of a value pair to update or remove the location from items with no location assigned.\nThe special term _ALL_ is used on the left side of the colon (:) to affect all items.\nThe special term _PERM_ is used on the right side of the colon (:) to return items to their permanent location.', 'Free'),
849
('UpdateItemLocationOnCheckin', ''),
850
('UpdateItemLocationOnCheckout', '', NULL, 'This is a list of value pairs.\n Examples:\n\nPROC: FIC - causes an item in the Processing Center location to be updated into the Fiction location on check out.\nFIC: GEN - causes an item in the Fiction location to be updated into the General stacks location on check out.\n_BLANK_:FIC - causes an item that has no location to be updated into the Fiction location on check out.\nFIC: _BLANK_ - causes an item in location FIC to be updated to a blank location on check out.\n_ALL_:FIC - causes all items to be updated into the Fiction location on check out.\nPROC: _PERM_ - causes an item that is in the Processing Center to be updated to it\'s permanent location.\n\nGeneral rule: if the location value on the left matches the item\'s current location, it will be updated to match the location value on the right.\nNote: PROC and CART are special values, for these locations only can location and permanent_location differ, in all other cases an update will affect both. Items in the CART location will be returned to their permanent location on checkout.\n\nThe special term _BLANK_ may be used on either side of a value pair to update or remove the location from items with no location assigned.\nThe special term _ALL_ is used on the left side of the colon (:) to affect all items.\nThe special term _PERM_ is used on the right side of the colon (:) to return items to their permanent location.', 'Free'),
850
('UpdateItemLocationOnCheckout', ''),
851
('UpdateItemLostStatusWhenPaid', '0', NULL, 'Allows the status of lost items to be automatically changed to lost and paid for when paid for', 'Integer'),
851
('UpdateItemLostStatusWhenPaid', '0'),
852
('UpdateItemLostStatusWhenWriteoff', '0', NULL, 'Allows the status of lost items to be automatically changed to lost and paid for when written off', 'Integer'),
852
('UpdateItemLostStatusWhenWriteoff', '0'),
853
('UpdateItemWhenLostFromHoldList','',NULL,'This is a list of values to update an item when it is marked as lost from the holds to pull screen','Free'),
853
('UpdateItemWhenLostFromHoldList',''),
854
('UpdateNotForLoanStatusOnCheckin', '', NULL, 'This is a list of item types and value pairs.\nExamples:\n_ALL_:\n -1: 0\n\nCR:\n 1: 0\n\nWhen an item is checked in, if its item type matches CR then when the value on the left (1) matches the items not for loan value it will be updated to the value on the right.\n\nThe special term _ALL_ is used on the left side of the colon (:) to affect all item types. This does not override all other rules\n\nEach item type needs to be defined on a separate line on the left side of the colon (:).\nEach pair of not for loan values, for that item type, should be listed on separate lines below the item type, each indented by a leading space.', 'Free'),
854
('UpdateNotForLoanStatusOnCheckin', ''),
855
('UpdateNotForLoanStatusOnCheckout', '', NULL, 'This is a list of value pairs. When an item is checked out, if its not for loan value matches the value on the left, then the items not for loan value will be updated to the value on the right. \nE.g. \'-1: 0\' will cause an item that was set to \'Ordered\' to now be available for loan. Each pair of values should be on a separate line.', 'Free'),
855
('UpdateNotForLoanStatusOnCheckout', ''),
856
('UpdateTotalIssuesOnCirc','0',NULL,'Whether to update the totalissues field in the biblio on each circ.','YesNo'),
856
('UpdateTotalIssuesOnCirc','0'),
857
('UploadPurgeTemporaryFilesDays','',NULL,'If not empty, number of days used when automatically deleting temporary uploads','Integer'),
857
('UploadPurgeTemporaryFilesDays',''),
858
('uppercasesurnames','0',NULL,'If ON, surnames are converted to upper case in patron entry form','YesNo'),
858
('uppercasesurnames','0'),
859
('URLLinkText','',NULL,'Text to display as the link anchor in the OPAC','Free'),
859
('URLLinkText',''),
860
('UsageStats', '2', NULL, 'Share anonymous usage data on the Hea Koha community website.', 'Integer'),
860
('UsageStats', '2'),
861
('UsageStatsCountry', '', NULL, 'The country where your library is located, to be shown on the Hea Koha community website', 'Choice'),
861
('UsageStatsCountry', ''),
862
('UsageStatsGeolocation', '', NULL, 'Geolocation of the main library.', 'Free'),
862
('UsageStatsGeolocation', ''),
863
('UsageStatsID', '', NULL, 'This preference is part of Koha but it should not be deleted or updated manually.', 'Free'),
863
('UsageStatsID', ''),
864
('UsageStatsLastUpdateTime', '', NULL, 'This preference is part of Koha but it should not be deleted or updated manually.', 'Free'),
864
('UsageStatsLastUpdateTime', ''),
865
('UsageStatsLibrariesInfo', '0', NULL, 'Share libraries information', 'YesNo'),
865
('UsageStatsLibrariesInfo', '0'),
866
('UsageStatsLibraryName', '', NULL, 'The library name to be shown on Hea Koha community website', 'Free'),
866
('UsageStatsLibraryName', ''),
867
('UsageStatsLibraryType', '', 'public|school|academic|research|private|societyAssociation|corporate|government|religiousOrg|subscription', 'The library type to be shown on the Hea Koha community website', 'Choice'),
867
('UsageStatsLibraryType', ''),
868
('UsageStatsLibraryUrl', '', NULL, 'The library URL to be shown on Hea Koha community website', 'Free'),
868
('UsageStatsLibraryUrl', ''),
869
('UsageStatsPublicID', '', NULL, 'Public ID for Hea website', 'Free'),
869
('UsageStatsPublicID', ''),
870
('UseACQFrameworkForBiblioRecords','0',NULL,'Use the ACQ framework for the catalog details','YesNo'),
870
('UseACQFrameworkForBiblioRecords','0'),
871
('UseAuthoritiesForTracings','1',NULL,'Use authority record numbers for subject tracings instead of heading strings.','YesNo'),
871
('UseAuthoritiesForTracings','1'),
872
('UseBranchTransferLimits','0',NULL,'If ON, Koha will will use the rules defined in branch_transfer_limits to decide if an item transfer should be allowed.','YesNo'),
872
('UseBranchTransferLimits','0'),
873
('UseCashRegisters','0',NULL,'Use cash registers with the accounting system and assign patron transactions to them.','YesNo'),
873
('UseCashRegisters','0'),
874
('UseCirculationDesks','0',NULL,'Use circulation desks with circulation.','YesNo'),
874
('UseCirculationDesks','0'),
875
('UseControlNumber','0',NULL,'If ON, record control number (w subfields) and control number (001) are used for linking of bibliographic records.','YesNo'),
875
('UseControlNumber','0'),
876
('UseCourseReserves','0',NULL,'Enable the course reserves feature.','YesNo'),
876
('UseCourseReserves','0'),
877
('useDaysMode','Calendar','Calendar|Days|Datedue|Dayweek','Choose the method for calculating due date: select Calendar, Datedue or Dayweek to use the holidays module, and Days to ignore the holidays module','Choice'),
877
('useDaysMode','Calendar'),
878
('useDefaultReplacementCost', '0', NULL, 'default replacement cost defined in item type', 'YesNo'),
878
('useDefaultReplacementCost', '0'),
879
('useDischarge','0',NULL,'Allows librarians to discharge borrowers and borrowers to request a discharge','YesNo'),
879
('useDischarge','0'),
880
('UseICUStyleQuotes','0',NULL,'Tell Koha whether to use ICU style quotes ({) or default (") when tracing subjects .','YesNo'),
880
('UseICUStyleQuotes','0'),
881
('UseLibraryFloatLimits', '0', '', 'Enables library float limits', 'YesNo'),
881
('UseLibraryFloatLimits', '0'),
882
('UseLocationAsAQInSIP', '0', NULL, 'Use permanent_location instead of homebranch for AQ in SIP response', 'YesNo'),
882
('UseLocationAsAQInSIP', '0'),
883
('UseOCLCEncodingLevels','0',NULL,'If enabled, include OCLC encoding levels in leader value builder dropdown for position 17.','YesNo'),
883
('UseOCLCEncodingLevels','0'),
884
('UseRecalls','0',NULL,'Enable or disable recalls','YesNo'),
884
('UseRecalls','0'),
885
('UseTransportCostMatrix','0',NULL,'Use Transport Cost Matrix when filling holds','YesNo'),
885
('UseTransportCostMatrix','0'),
886
('UseWYSIWYGinSystemPreferences','0',NULL,'Show WYSIWYG editor when editing certain HTML system preferences.','YesNo'),
886
('UseWYSIWYGinSystemPreferences','0'),
887
('viewISBD','1',NULL,'Allow display of ISBD view of bibiographic records','YesNo'),
887
('viewISBD','1'),
888
('viewLabeledMARC','0',NULL,'Allow display of labeled MARC view of bibiographic records','YesNo'),
888
('viewLabeledMARC','0'),
889
('viewMARC','1',NULL,'Allow display of MARC view of bibiographic records','YesNo'),
889
('viewMARC','1'),
890
('virtualshelves','1',NULL,'If ON, enables Lists management','YesNo'),
890
('virtualshelves','1'),
891
('WaitingNotifyAtCheckin','0',NULL,'If ON, notify librarians of waiting holds for the patron whose items they are checking in.','YesNo'),
891
('WaitingNotifyAtCheckin','0'),
892
('WaitingNotifyAtCheckout','0',NULL,'If ON, notify librarians of waiting holds for the patron whose items they are checking out.','YesNo'),
892
('WaitingNotifyAtCheckout','0'),
893
('WebBasedSelfCheck','0',NULL,'If ON, enables the web-based self-check system','YesNo'),
893
('WebBasedSelfCheck','0'),
894
('WhenLostChargeReplacementFee','1',NULL,'If ON, Charge the replacement price when a patron loses an item.','YesNo'),
894
('WhenLostChargeReplacementFee','1'),
895
('WhenLostForgiveFine','0',NULL,'If ON, Forgives the fines on an item when it is lost.','YesNo'),
895
('WhenLostForgiveFine','0'),
896
('XSLTDetailsDisplay','default',NULL,'Enable XSL stylesheet control over details page display on intranet','Free'),
896
('XSLTDetailsDisplay','default'),
897
('XSLTListsDisplay','default',NULL,'Enable XSLT stylesheet control over lists pages display on intranet','Free'),
897
('XSLTListsDisplay','default'),
898
('XSLTResultsDisplay','default',NULL,'Enable XSL stylesheet control over results page display on intranet','Free'),
898
('XSLTResultsDisplay','default'),
899
('z3950AuthorAuthFields','701,702,700',NULL,'Define the MARC biblio fields for Personal Name Authorities to fill biblio.author','Free'),
899
('z3950AuthorAuthFields','701,702,700'),
900
('z3950NormalizeAuthor','0',NULL,'If ON, Personal Name Authorities will replace authors in biblio.author','YesNo'),
900
('z3950NormalizeAuthor','0'),
901
('z3950Status','',NULL,'This syspref allows to define custom YAML based rules for marking items unavailable in z3950 results.','Textarea')
901
('z3950Status','')
902
;
902
;
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/cataloguing.pref (-1 / +1 lines)
Lines 76-82 Cataloging: Link Here
76
                  1: Show
76
                  1: Show
77
                  0:  "Don't show"
77
                  0:  "Don't show"
78
            - buttons on the bibliographic details page to print item spine labels.
78
            - buttons on the bibliographic details page to print item spine labels.
79
        -
79
80
    Record structure:
80
    Record structure:
81
        -
81
        -
82
            - "Fill in the default language for field 008 Range 35-37 of MARC21 records (e.g. eng, nor, ger, see <a href='http://www.loc.gov/marc/languages/language_code.html'>MARC Code List for Languages</a>):"
82
            - "Fill in the default language for field 008 Range 35-37 of MARC21 records (e.g. eng, nor, ger, see <a href='http://www.loc.gov/marc/languages/language_code.html'>MARC Code List for Languages</a>):"
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref (-6 / +1 lines)
Lines 696-702 Circulation: Link Here
696
              multiple:
696
              multiple:
697
                intransit: In-transit
697
                intransit: In-transit
698
                checkedout: Checked out
698
                checkedout: Checked out
699
            -
700
        -
699
        -
701
            - pref: BlockReturnOfLostItems
700
            - pref: BlockReturnOfLostItems
702
              choices:
701
              choices:
Lines 921-927 Circulation: Link Here
921
                  1: in random order.
920
                  1: in random order.
922
                  0: in that order.
921
                  0: in that order.
923
            - "<br><strong>NOTE:</strong> This system preference requires the <code>misc/cronjobs/holds/build_holds_queue.pl</code> cronjob. Ask your system administrator to schedule it."
922
            - "<br><strong>NOTE:</strong> This system preference requires the <code>misc/cronjobs/holds/build_holds_queue.pl</code> cronjob. Ask your system administrator to schedule it."
924
            -
925
        -
923
        -
926
            - pref: canreservefromotherbranches
924
            - pref: canreservefromotherbranches
927
              choices:
925
              choices:
Lines 1431-1437 Circulation: Link Here
1431
                date: Date
1429
                date: Date
1432
                pages: Pages
1430
                pages: Pages
1433
                chapters: Chapters
1431
                chapters: Chapters
1434
            -
1435
        -
1432
        -
1436
            - "For records that are only record level requestable, make the following fields mandatory:"
1433
            - "For records that are only record level requestable, make the following fields mandatory:"
1437
            - pref: ArticleRequestsMandatoryFieldsRecordOnly
1434
            - pref: ArticleRequestsMandatoryFieldsRecordOnly
Lines 1443-1449 Circulation: Link Here
1443
                date: Date
1440
                date: Date
1444
                pages: Pages
1441
                pages: Pages
1445
                chapters: Chapters
1442
                chapters: Chapters
1446
            -
1447
        -
1443
        -
1448
            - "For records that are only item level requestable, make the following fields mandatory:"
1444
            - "For records that are only item level requestable, make the following fields mandatory:"
1449
            - pref: ArticleRequestsMandatoryFieldsItemOnly
1445
            - pref: ArticleRequestsMandatoryFieldsItemOnly
Lines 1455-1461 Circulation: Link Here
1455
                date: Date
1451
                date: Date
1456
                pages: Pages
1452
                pages: Pages
1457
                chapters: Chapters
1453
                chapters: Chapters
1458
            -
1459
        -
1454
        -
1460
            - "The following article request formats are supported:"
1455
            - "The following article request formats are supported:"
1461
            - pref: ArticleRequestsSupportedFormats
1456
            - pref: ArticleRequestsSupportedFormats
Lines 1524-1530 Circulation: Link Here
1524
        -
1519
        -
1525
            - Mark a recall as problematic if it has been waiting to be picked up for
1520
            - Mark a recall as problematic if it has been waiting to be picked up for
1526
            - pref: RecallsMaxPickUpDelay
1521
            - pref: RecallsMaxPickUpDelay
1527
            - class: integer
1522
              class: integer
1528
            - days.
1523
            - days.
1529
        -
1524
        -
1530
            - pref: UseRecalls
1525
            - pref: UseRecalls
(-)a/t/db_dependent/check_sysprefs.t (-138 / +67 lines)
Lines 19-211 Link Here
19
19
20
use Modern::Perl;
20
use Modern::Perl;
21
21
22
use File::Slurp qw(read_file);
23
use C4::Context;
24
use Array::Utils qw(array_minus);
22
use Array::Utils qw(array_minus);
25
23
26
use Test::NoWarnings;
24
use Test::NoWarnings;
27
use Test::More tests => 3;
25
use Test::More tests => 3;
28
26
27
use C4::Context;
28
29
use Koha::Devel::Sysprefs;
30
use Koha::Config::SysPrefs;
31
29
our $dbh = C4::Context->dbh;
32
our $dbh = C4::Context->dbh;
30
my $intranetdir      = C4::Context->config('intranetdir');
33
my $intranetdir = C4::Context->config('intranetdir');
31
my $root_dir         = $intranetdir . '/installer/data/mysql/mandatory';
32
my $syspref_filepath = "$root_dir/sysprefs.sql";
33
34
34
my @lines            = read_file($syspref_filepath) or die "Can't open $syspref_filepath: $!";
35
my @exceptions = qw(
35
my @sysprefs_in_file = get_sysprefs_from_file(@lines);
36
    marcflavour
37
    ElasticsearchIndexStatus_authorities
38
    ElasticsearchIndexStatus_biblios
39
    OPACdidyoumean
40
    UsageStatsID
41
    UsageStatsLastUpdateTime
42
    UsageStatsPublicID
43
);
44
45
my @sysprefs_in_sql_file = Koha::Devel::Sysprefs->new->get_sysprefs_from_file();
36
46
37
subtest 'Compare database with sysprefs.sql file' => sub {
47
subtest 'Compare database with sysprefs.sql file' => sub {
38
    ok( scalar(@sysprefs_in_file), "Found sysprefs" );
48
    ok( scalar(@sysprefs_in_sql_file), "Found sysprefs" );
39
49
40
    check_db(@sysprefs_in_file);
50
    check_db(@sysprefs_in_sql_file);
41
};
51
};
42
52
43
subtest 'Compare sysprefs.sql with YAML files' => sub {
53
subtest 'Compare sysprefs.sql with YAML files' => sub {
44
    plan tests => 2;
54
    plan tests => 2;
45
55
46
    my $yaml_prefs = get_syspref_from_yaml();
56
    my $yaml_prefs                  = Koha::Config::SysPrefs->get_all_from_yml;
47
    my @yaml_mod   = @$yaml_prefs;
57
    my @syspref_names_in_yaml_files = keys %$yaml_prefs;
48
    @yaml_mod = grep !/marcflavour/, @yaml_mod;    # Added by web installer
58
    @syspref_names_in_yaml_files = array_minus @syspref_names_in_yaml_files, @exceptions;
49
59
50
    my @syspref_names_in_file = map { $_->{variable} } @sysprefs_in_file;
60
    my @syspref_names_in_sql_file = map { $_->{variable} } @sysprefs_in_sql_file;
51
    @syspref_names_in_file = grep !/ElasticsearchIndexStatus_authorities/,
61
    @syspref_names_in_sql_file = array_minus @syspref_names_in_sql_file, @exceptions;
52
        @syspref_names_in_file;                    # Not to be changed manually
62
53
    @syspref_names_in_file = grep !/ElasticsearchIndexStatus_biblios/,
63
    my @missing_yaml = array_minus( @syspref_names_in_sql_file, @syspref_names_in_yaml_files );
54
        @syspref_names_in_file;                    # Not to be changed manually
55
    @syspref_names_in_file = grep !/OPACdidyoumean/,           @syspref_names_in_file;    # Separate configuration page
56
    @syspref_names_in_file = grep !/UsageStatsID/,             @syspref_names_in_file;    # Separate configuration page
57
    @syspref_names_in_file = grep !/UsageStatsLastUpdateTime/, @syspref_names_in_file;    # Separate configuration page
58
    @syspref_names_in_file = grep !/UsageStatsPublicID/,       @syspref_names_in_file;    # Separate configuration page
59
60
    my @missing_yaml = array_minus( @syspref_names_in_file, @yaml_mod );
61
    is( scalar @missing_yaml, 0, "No system preference entries missing from sysprefs.sql" );
64
    is( scalar @missing_yaml, 0, "No system preference entries missing from sysprefs.sql" );
62
    if ( scalar @missing_yaml > 0 ) {
65
    if ( scalar @missing_yaml > 0 ) {
63
        diag "System preferences missing from YAML:\n  * " . join( "\n  * ", @missing_yaml ) . "\n";
66
        diag "System preferences missing from YAML:\n  * " . join( "\n  * ", @missing_yaml ) . "\n";
64
    }
67
    }
65
68
66
    my @missing_sysprefs = array_minus( @yaml_mod, @syspref_names_in_file );
69
    my @missing_sysprefs = array_minus( @syspref_names_in_yaml_files, @syspref_names_in_sql_file );
67
    is( scalar @missing_sysprefs, 0, "No system preference entries missing from YAML files" );
70
    is( scalar @missing_sysprefs, 0, "No system preference entries missing from YAML files" );
68
    if ( scalar @missing_sysprefs > 0 ) {
71
    if ( scalar @missing_sysprefs > 0 ) {
69
        diag "System preferences missing from sysprefs.sql:\n  * " . join( "\n  * ", @missing_sysprefs ) . "\n";
72
        diag "System preferences missing from sysprefs.sql:\n  * " . join( "\n  * ", @missing_sysprefs ) . "\n";
70
    }
73
    }
71
};
74
};
72
75
73
# Get sysprefs from SQL file populating sysprefs table with INSERT statement.
74
#
75
# Example:
76
# INSERT INTO `systempreferences` (variable,value,explanation,options,type)
77
# VALUES('AmazonLocale','US','Use to set the Locale of your Amazon.com Web Services',
78
# 'US|CA|DE|FR|JP|UK','Choice')
79
#
80
sub get_sysprefs_from_file {
81
    my @lines = @_;
82
    my @sysprefs;
83
    for my $line (@lines) {
84
        chomp $line;
85
        next if $line =~ /^INSERT INTO /;    # first line
86
        next if $line =~ /^;$/;              # last line
87
        next if $line =~ /^--/;              # Comment line
88
        if (
89
            $line =~ m/
90
            '(?<variable>[^'\\]*(?:\\.[^'\\]*)*)',\s*
91
            '(?<value>[^'\\]*(?:\\.[^'\\]*)*)',\s*
92
            (?<options>NULL|'(?<options_content>[^'\\]*(?:\\.[^'\\]*)*)'),\s*
93
            (?<explanation>NULL|'(?<explanation_content>[^'\\]*(?:\\.[^'\\]*)*)'),\s*
94
            (?<type>NULL|'(?<type_content>[^'\\]*(?:\\.[^'\\]*)*)')
95
        /xms
96
            )
97
        {
98
            my $variable    = $+{variable};
99
            my $value       = $+{value};
100
            my $options     = $+{options_content};
101
            my $explanation = $+{explanation_content};
102
            my $type        = $+{type_content};
103
104
            if ($options) {
105
                $options =~ s/\\'/'/g;
106
                $options =~ s/\\\\/\\/g;
107
            }
108
            if ($explanation) {
109
                $explanation =~ s/\\'/'/g;
110
                $explanation =~ s/\\n/\n/g;
111
            }
112
113
            # FIXME Explode if already exists?
114
            push @sysprefs, {
115
                variable    => $variable,
116
                value       => $value,
117
                options     => $options,
118
                explanation => $explanation,
119
                type        => $type,
120
            };
121
        } else {
122
            die "$line does not match";
123
        }
124
    }
125
    return @sysprefs;
126
}
127
128
#  Get system preferences from YAML files
129
sub get_syspref_from_yaml {
130
    my @prefs;
131
    foreach my $file ( glob( $intranetdir . "/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/*.pref" ) ) {
132
        if ( open( my $fh, '<:encoding(UTF-8)', $file ) ) {
133
            while ( my $row = <$fh> ) {
134
                chomp $row;
135
                my $pref;
136
                if ( $row =~ /pref: (.*)/ ) {
137
                    $pref = $1;
138
                    $pref =~ s/["']//ig;
139
                    push @prefs, $pref;
140
                }
141
            }
142
        } else {
143
            warn "Could not open file '$file' $!";
144
        }
145
    }
146
    return \@prefs;
147
}
148
149
sub check_db {
76
sub check_db {
150
    my @sysprefs_from_file = @_;
77
    my @sysprefs_from_file = @_;
151
78
152
    # FIXME FrameworksLoaded is a temporary syspref created during the installation process
79
    # FIXME FrameworksLoaded is a temporary syspref created during the installation process
153
    # We should either rewrite the code to avoid its need, or delete it once the installation is finished.
80
    # We should either rewrite the code to avoid its need, or delete it once the installation is finished.
154
    my $sysprefs_in_db = $dbh->selectall_hashref(
81
    my $sysprefs_in_db = $dbh->selectall_arrayref(
155
        q{
82
        q{
156
        SELECT * from systempreferences
83
        SELECT * from systempreferences
157
        WHERE variable <> 'FrameworksLoaded'
84
        WHERE variable NOT IN ('marcflavour', 'Version', 'FrameworksLoaded')
158
    }, 'variable'
85
        ORDER BY variable
86
    }, { Slice => {} }
159
    );
87
    );
160
88
89
    my $yaml_prefs = Koha::Config::SysPrefs->get_all_from_yml;
90
161
    # Checking the number of sysprefs in the database
91
    # Checking the number of sysprefs in the database
162
    my @syspref_names_in_db   = keys %$sysprefs_in_db;
92
    my @syspref_names_in_db       = map { $_->{variable} } @$sysprefs_in_db;
163
    my @syspref_names_in_file = map { $_->{variable} } @sysprefs_in_file;
93
    my @syspref_names_in_sql_file = map { $_->{variable} } @sysprefs_in_sql_file;
164
    my @diff                  = array_minus @syspref_names_in_db, @syspref_names_in_file;
94
    my @diff                      = array_minus @syspref_names_in_db, @syspref_names_in_sql_file;
165
    is_deeply( [ sort @diff ], [ 'Version', 'marcflavour' ] )
95
    is( scalar(@diff), 0 )
166
        or diag sprintf( "Too many sysprefs in DB: %s", join ", ", @diff );
96
        or diag sprintf( "Too many sysprefs in DB: %s", join ", ", @diff );
167
97
168
    my @sorted_names_in_file = sort {
98
    is_deeply( \@syspref_names_in_sql_file, \@syspref_names_in_db, 'Syspref in sysprefs.sql must be sorted by name' );
169
        $b =~ s/_/ZZZ/g;    # mysql sorts underscore last, if you modify this qa-test-tools will need adjustments
99
    for my $pref (@sysprefs_in_sql_file) {
170
        lc($a) cmp lc($b)
100
        my ($in_db)   = grep { $_->{variable} eq $pref->{variable} } @$sysprefs_in_db;
171
    } @syspref_names_in_file;
172
    is_deeply( \@syspref_names_in_file, \@sorted_names_in_file, 'Syspref in sysprefs.sql must be sorted by name' );
173
    for my $pref (@sysprefs_in_file) {
174
        my $in_db     = $sysprefs_in_db->{ $pref->{variable} };
175
        my %db_copy   = %$in_db;
101
        my %db_copy   = %$in_db;
176
        my %file_copy = %$pref;
102
        my %file_copy = %$pref;
177
        delete $db_copy{value};
103
        delete $db_copy{value};
178
        delete $file_copy{value};
104
        delete $file_copy{value};
179
105
180
        if ( $pref->{variable} =~ m{^ElasticsearchIndexStatus_} ) {
106
        delete $db_copy{options};
181
107
        delete $db_copy{explanation};
182
            # Exception for the 2 sysprefs ElasticsearchIndexStatus_authorities and ElasticsearchIndexStatus_biblios
108
        delete $db_copy{type};
183
            # They do not have a type defined
184
            # Will deal with them on a follow-up bugs
185
            next;
186
        }
187
109
188
        # Do not compare values, they can differ (new vs existing installs)
110
        # Do not compare values, they can differ (new vs existing installs)
189
        is_deeply( \%db_copy, \%file_copy, sprintf "Comparing %s", $pref->{variable} );
111
        is_deeply( \%db_copy, \%file_copy, sprintf "Comparing %s", $pref->{variable} );
190
        if ( !defined $pref->{type} ) {
112
        if ( defined $in_db->{options} ) {
191
            fail( sprintf "%s does not have a type in file!", $pref->{variable} );
113
            fail( sprintf "%s has 'options' set in DB, must be NULL!", $in_db->{variable} );
192
        }
114
        }
193
        if ( !defined $in_db->{type} ) {
115
        if ( defined $in_db->{explanation} ) {
194
            fail( sprintf "%s does not have a type in DB!", $in_db->{variable} );
116
            fail( sprintf "%s has 'explanation' set in DB, must be NULL!", $in_db->{variable} );
195
        }
117
        }
196
        if ( $pref->{type} && $pref->{type} eq 'YesNo' ) {
118
        if ( defined $in_db->{type} ) {
197
            like(
119
            fail( sprintf "%s has 'type' set in DB, must be NULL!", $in_db->{variable} );
198
                $pref->{value}, qr{^(0|1)$},
199
                sprintf( "Pref %s must be 0 or 1, found=%s in file", $pref->{variable}, $pref->{value} ),
200
            );
201
            like(
202
                $in_db->{value}, qr{^(0|1)$},
203
                sprintf( "Pref %s must be 0 or 1, found=%s in DB", $in_db->{variable}, $in_db->{value} ),
204
            );
205
        }
120
        }
206
121
207
        # TODO Check on valid 'type'
122
        next if grep { $_ eq $pref->{variable} } @exceptions;
208
        #like($pref->{type}, qr{^()$});
123
124
        my $yaml_pref = $yaml_prefs->{ $pref->{variable} };
125
        if ( $yaml_pref->{type} eq 'select' && ref( $yaml_pref->{choices} ) ) {
126
            my @choices = sort keys %{ $yaml_pref->{choices} };
127
            if ( scalar(@choices) == 2 && $choices[0] eq "0" && $choices[1] eq "1" ) {
128
                like(
129
                    $pref->{value}, qr{^(0|1)$},
130
                    sprintf( "Pref %s must be 0 or 1, found=%s in file", $pref->{variable}, $pref->{value} ),
131
                );
132
                like(
133
                    $in_db->{value}, qr{^(0|1)$},
134
                    sprintf( "Pref %s must be 0 or 1, found=%s in DB", $in_db->{variable}, $in_db->{value} ),
135
                );
136
137
            }
138
        }
209
    }
139
    }
210
}
140
}
211
141
212
- 

Return to bug 41834