File renaming: Fix empty value being added when all types are disabled

And filter out empty values in isRenameAllowedForType() in order to
handle bad pref values set before this commit.

Follow-up to aab90527ec
This commit is contained in:
Abe Jellinek 2024-08-01 10:30:21 -04:00
parent aab90527ec
commit 6cb6dd3bb5
2 changed files with 8 additions and 4 deletions

View file

@ -219,7 +219,11 @@ Zotero_Preferences.General = {
setAutoRenameFileTypes: function () {
let typesBox = document.getElementById('zotero-prefpane-file-renaming-file-types-box');
let enabledTypes = new Set(Zotero.Prefs.get('autoRenameFiles.fileTypes').split(','));
let enabledTypes = new Set(
Zotero.Prefs.get('autoRenameFiles.fileTypes')
.split(',')
.filter(Boolean)
);
for (let checkbox of typesBox.querySelectorAll('checkbox')) {
if (checkbox.checked) {
enabledTypes.add(checkbox.dataset.contentType);

View file

@ -2479,9 +2479,9 @@ Zotero.Attachments = new function () {
this.isRenameAllowedForType = function (contentType) {
let typePrefixes;
try {
let prefValue = Zotero.Prefs.get('autoRenameFiles.fileTypes');
if (!prefValue) return false;
typePrefixes = prefValue.split(',');
typePrefixes = Zotero.Prefs.get('autoRenameFiles.fileTypes')
.split(',')
.filter(Boolean);
}
catch (e) {
typePrefixes = [];