From 7ae1d560f3cfd51ff4f9067667c7119952713248 Mon Sep 17 00:00:00 2001 From: LJQ Date: Sat, 25 May 2024 13:45:56 +0800 Subject: [PATCH 1/3] Add button to reset metadata in metadata editor --- .../metadataEditor/metadataEditor.js | 38 +++++++++++++++++++ .../metadataEditor.template.html | 3 ++ 2 files changed, 41 insertions(+) diff --git a/src/components/metadataEditor/metadataEditor.js b/src/components/metadataEditor/metadataEditor.js index 02723463cf..272125c41f 100644 --- a/src/components/metadataEditor/metadataEditor.js +++ b/src/components/metadataEditor/metadataEditor.js @@ -298,6 +298,42 @@ function bindAll(elems, eventName, fn) { } } +function onResetClick(e) { + const resetElementId = ['#txtName', '#txtOriginalName', '#txtSortName', '#txtCommunityRating', '#txtCriticRating', '#txtIndexNumber', + '#txtAirsBeforeSeason', '#txtAirsAfterSeason', '#txtAirsBeforeEpisode', '#txtParentIndexNumber', '#txtAlbum', + '#txtAlbumArtist', '#txtArtist', '#txtOverview', '#selectStatus', '#txtAirTime', '#txtPremiereDate', '#txtDateAdded', '#txtEndDate', + '#txtProductionYear', '#selectHeight', '#txtOriginalAspectRatio', '#select3dFormat', '#selectOfficialRating', '#selectCustomRating', + '#txtSeriesRuntime', '#txtTagline']; + const form = e.target.parentElement.parentElement.parentElement; + resetElementId.forEach(function (id) { + form.querySelector(id).value = null; + }); + form.querySelector('#selectDisplayOrder').value = ''; + form.querySelector('#listGenres').innerHTML = ''; + form.querySelector('#listTags').innerHTML = ''; + form.querySelector('#listStudios').innerHTML = ''; + form.querySelector('#peopleList').innerHTML = ''; + currentItem.People = []; + + const checkedItems = form.querySelectorAll('.chkAirDay:checked') || []; + checkedItems.forEach(function (checkbox) { + checkbox.checked = false; + }); + + const idElements = form.querySelectorAll('.txtExternalId'); + idElements.forEach(function (idElem) { + idElem.value = null; + }); + + form.querySelector('#chkLockData').checked = false; + showElement('.providerSettingsContainer'); + + const lockedFields = form.querySelectorAll('.selectLockedField'); + lockedFields.forEach(function (checkbox) { + checkbox.checked = true; + }); +} + function init(context) { if (!layoutManager.desktop) { context.querySelector('.btnBack').classList.remove('hide'); @@ -334,6 +370,8 @@ function init(context) { form.removeEventListener('submit', onSubmit); form.addEventListener('submit', onSubmit); + context.querySelector('.btnReset').addEventListener('click', onResetClick); + context.querySelector('#btnAddPerson').addEventListener('click', function () { editPerson(context, {}, -1); }); diff --git a/src/components/metadataEditor/metadataEditor.template.html b/src/components/metadataEditor/metadataEditor.template.html index 6c01c2fc07..6d35fee02b 100644 --- a/src/components/metadataEditor/metadataEditor.template.html +++ b/src/components/metadataEditor/metadataEditor.template.html @@ -264,6 +264,9 @@ + From 4c7a77ce7b6c51652c9ff3cc925a99e2990b807d Mon Sep 17 00:00:00 2001 From: LJQ Date: Sat, 25 May 2024 14:10:31 +0800 Subject: [PATCH 2/3] Add reset to en-us.json --- src/strings/en-us.json | 1 + 1 file changed, 1 insertion(+) diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 12023468eb..5261150292 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -1365,6 +1365,7 @@ "RepeatOne": "Repeat one", "ReplaceAllMetadata": "Replace all metadata", "ReplaceExistingImages": "Replace existing images", + "Reset": "Reset", "ResetPassword": "Reset Password", "ResolutionMatchSource": "Match Source", "Restart": "Restart", From 3b7d159749716a7965f5b8a8f85111311f4dc034 Mon Sep 17 00:00:00 2001 From: LJQ Date: Mon, 26 Aug 2024 19:50:04 +0800 Subject: [PATCH 3/3] Add suggestions --- src/components/metadataEditor/metadataEditor.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/components/metadataEditor/metadataEditor.js b/src/components/metadataEditor/metadataEditor.js index 272125c41f..33164b063d 100644 --- a/src/components/metadataEditor/metadataEditor.js +++ b/src/components/metadataEditor/metadataEditor.js @@ -298,17 +298,19 @@ function bindAll(elems, eventName, fn) { } } -function onResetClick(e) { +function onResetClick() { const resetElementId = ['#txtName', '#txtOriginalName', '#txtSortName', '#txtCommunityRating', '#txtCriticRating', '#txtIndexNumber', '#txtAirsBeforeSeason', '#txtAirsAfterSeason', '#txtAirsBeforeEpisode', '#txtParentIndexNumber', '#txtAlbum', '#txtAlbumArtist', '#txtArtist', '#txtOverview', '#selectStatus', '#txtAirTime', '#txtPremiereDate', '#txtDateAdded', '#txtEndDate', '#txtProductionYear', '#selectHeight', '#txtOriginalAspectRatio', '#select3dFormat', '#selectOfficialRating', '#selectCustomRating', '#txtSeriesRuntime', '#txtTagline']; - const form = e.target.parentElement.parentElement.parentElement; + const form = currentContext?.querySelector('form'); resetElementId.forEach(function (id) { form.querySelector(id).value = null; }); form.querySelector('#selectDisplayOrder').value = ''; + form.querySelector('#selectLanguage').value = ''; + form.querySelector('#selectCountry').value = ''; form.querySelector('#listGenres').innerHTML = ''; form.querySelector('#listTags').innerHTML = ''; form.querySelector('#listStudios').innerHTML = '';