diff --git a/src/components/metadataEditor/metadataEditor.js b/src/components/metadataEditor/metadataEditor.js
index 1415bdd993..b40a858b6b 100644
--- a/src/components/metadataEditor/metadataEditor.js
+++ b/src/components/metadataEditor/metadataEditor.js
@@ -298,6 +298,44 @@ function bindAll(elems, eventName, fn) {
}
}
+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 = 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 = '';
+ 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 +372,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 @@
+
diff --git a/src/strings/en-us.json b/src/strings/en-us.json
index da956eb93a..c6d9c285b2 100644
--- a/src/strings/en-us.json
+++ b/src/strings/en-us.json
@@ -1379,6 +1379,7 @@
"RepeatOne": "Repeat one",
"ReplaceAllMetadata": "Replace all metadata",
"ReplaceExistingImages": "Replace existing images",
+ "Reset": "Reset",
"ResetPassword": "Reset Password",
"ResolutionMatchSource": "Match Source",
"Restart": "Restart",