@@ -, +, @@ sysprefs --- admin/preferences.pl | 1 + .../intranet-tmpl/prog/en/modules/admin/preferences.tt | 2 +- koha-tmpl/intranet-tmpl/prog/js/pages/preferences.js | 6 ++++++ 3 files changed, 8 insertions(+), 1 deletion(-) --- a/admin/preferences.pl +++ a/admin/preferences.pl @@ -63,6 +63,7 @@ sub _get_chunk { if ( $options{'type'} eq 'modalselect' ) { $chunk->{'source'} = $options{'source'}; $chunk->{'exclusions'} = $options{'exclusions'} // ""; + $chunk->{'inclusions'} = $options{'inclusions'} // ""; $chunk->{'required'} = $options{'required'} // ""; $chunk->{'type'} = 'modalselect'; } elsif ( $options{'type'} eq 'modaljs' ) { --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences.tt @@ -134,7 +134,7 @@ [% END %] [% ELSIF ( CHUNK.type_modalselect ) %] - + [% ELSIF ( CHUNK.type_modaljs ) %] [% ELSIF ( CHUNK.type_multiple ) %] --- a/koha-tmpl/intranet-tmpl/prog/js/pages/preferences.js +++ a/koha-tmpl/intranet-tmpl/prog/js/pages/preferences.js @@ -281,6 +281,7 @@ $( document ).ready( function () { $(".modalselect").on("click", function(){ var datasource = $(this).data("source"); var exclusions = $(this).data("exclusions").split('|'); + var inclusions = $(this).data("inclusions").split('|'); var required = $(this).data("required").split('|'); var pref_name = this.id.replace(/pref_/, ''); var pref_value = this.value; @@ -305,10 +306,15 @@ $( document ).ready( function () { style = "disabled"; disabled = ' disabled="disabled" '; checked = ""; + } else if( inclusions.indexOf( key ) >= 0 ){ + style = "disabled"; + disabled = ' disabled="disabled" '; + checked = ' checked="checked" '; } else { style = ""; disabled = ""; } + items.push(''); }); $("
", { --