Bug 36234: Fix 'languages' prefs selection

Test plan:
Edit and save several types of sysprefs, reload the page to confirm they
are correctly saved, or check their values in DB

Signed-off-by: Christian Stelzenmüller <christian.stelzenmueller@bsz-bw.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This commit is contained in:
Jonathan Druart 2024-03-05 16:04:04 +01:00 committed by Katrin Fischer
parent 214fc675cf
commit 2f9e8b2b6f
Signed by: kfischer
GPG key ID: 0EF6E2C03357A834

View file

@ -8,7 +8,13 @@ KOHA.Preferences = {
return;
}
let sysprefs = $(form).find('.modified').toArray().reduce((map, e) => ({ ...map, [$(e).attr('name')]: [$(e).val()].flat()}), {});
let sysprefs = $(form).find('.modified').not('.preference-checkbox').toArray().reduce((map, e) => ({ ...map, [$(e).attr('name')]: [$(e).val()].flat()}), {});
// language prefs
$(form).find('.modified.preference-checkbox:checked').toArray().forEach((elt) => {
(sysprefs[$(elt).attr('name')] = sysprefs[$(elt).attr('name')] || []).push($(elt).val());
});
if ( !Object.keys(sysprefs).length ) {
humanMsg.displayAlert( __("Nothing to save") );
return;