1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Merge pull request #5635 from Shadowghost/enhance-trickplay

This commit is contained in:
Bill Thornton 2024-09-14 16:51:18 -04:00 committed by GitHub
commit 51738621f6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 22 additions and 1 deletions

View file

@ -530,6 +530,7 @@ export function getLibraryOptions(parent) {
EnableRealtimeMonitor: parent.querySelector('.chkEnableRealtimeMonitor').checked, EnableRealtimeMonitor: parent.querySelector('.chkEnableRealtimeMonitor').checked,
EnableLUFSScan: parent.querySelector('.chkEnableLUFSScan').checked, EnableLUFSScan: parent.querySelector('.chkEnableLUFSScan').checked,
ExtractTrickplayImagesDuringLibraryScan: parent.querySelector('.chkExtractTrickplayDuringLibraryScan').checked, ExtractTrickplayImagesDuringLibraryScan: parent.querySelector('.chkExtractTrickplayDuringLibraryScan').checked,
SaveTrickplayWithMedia: parent.querySelector('.chkSaveTrickplayLocally').checked,
EnableTrickplayImageExtraction: parent.querySelector('.chkExtractTrickplayImages').checked, EnableTrickplayImageExtraction: parent.querySelector('.chkExtractTrickplayImages').checked,
ExtractChapterImagesDuringLibraryScan: parent.querySelector('.chkExtractChaptersDuringLibraryScan').checked, ExtractChapterImagesDuringLibraryScan: parent.querySelector('.chkExtractChaptersDuringLibraryScan').checked,
EnableChapterImageExtraction: parent.querySelector('.chkExtractChapterImages').checked, EnableChapterImageExtraction: parent.querySelector('.chkExtractChapterImages').checked,
@ -597,6 +598,7 @@ export function setLibraryOptions(parent, options) {
parent.querySelector('.chkEnableLUFSScan').checked = options.EnableLUFSScan; parent.querySelector('.chkEnableLUFSScan').checked = options.EnableLUFSScan;
parent.querySelector('.chkExtractTrickplayDuringLibraryScan').checked = options.ExtractTrickplayImagesDuringLibraryScan; parent.querySelector('.chkExtractTrickplayDuringLibraryScan').checked = options.ExtractTrickplayImagesDuringLibraryScan;
parent.querySelector('.chkExtractTrickplayImages').checked = options.EnableTrickplayImageExtraction; parent.querySelector('.chkExtractTrickplayImages').checked = options.EnableTrickplayImageExtraction;
parent.querySelector('.chkSaveTrickplayLocally').checked = options.SaveTrickplayWithMedia;
parent.querySelector('.chkExtractChaptersDuringLibraryScan').checked = options.ExtractChapterImagesDuringLibraryScan; parent.querySelector('.chkExtractChaptersDuringLibraryScan').checked = options.ExtractChapterImagesDuringLibraryScan;
parent.querySelector('.chkExtractChapterImages').checked = options.EnableChapterImageExtraction; parent.querySelector('.chkExtractChapterImages').checked = options.EnableChapterImageExtraction;
parent.querySelector('#chkSaveLocal').checked = options.SaveLocalMetadata; parent.querySelector('#chkSaveLocal').checked = options.SaveLocalMetadata;

View file

@ -129,6 +129,14 @@
</label> </label>
<div class="fieldDescription checkboxFieldDescription">${LabelExtractTrickplayDuringLibraryScanHelp}</div> <div class="fieldDescription checkboxFieldDescription">${LabelExtractTrickplayDuringLibraryScanHelp}</div>
</div> </div>
<div class="checkboxContainer checkboxContainer-withDescription fldSaveTrickplayLocally advanced">
<label>
<input type="checkbox" is="emby-checkbox" class="chkSaveTrickplayLocally" />
<span>${LabelSaveTrickplayLocally}</span>
</label>
<div class="fieldDescription checkboxFieldDescription">${LabelSaveTrickplayLocallyHelp}</div>
</div>
</div> </div>
<div class="chapterSettingsSection hide"> <div class="chapterSettingsSection hide">

View file

@ -33,6 +33,11 @@ function getEditorHtml() {
html += '<span>' + globalize.translate('ReplaceExistingImages') + '</span>'; html += '<span>' + globalize.translate('ReplaceExistingImages') + '</span>';
html += '</label>'; html += '</label>';
html += '<label class="checkboxContainer hide fldReplaceTrickplayImages">';
html += '<input type="checkbox" is="emby-checkbox" class="chkReplaceTrickplayImages" />';
html += '<span>' + globalize.translate('ReplaceTrickplayImages') + '</span>';
html += '</label>';
html += '<div class="fieldDescription">'; html += '<div class="fieldDescription">';
html += globalize.translate('RefreshDialogHelp'); html += globalize.translate('RefreshDialogHelp');
html += '</div>'; html += '</div>';
@ -71,14 +76,15 @@ function onSubmit(e) {
const mode = dlg.querySelector('#selectMetadataRefreshMode').value === 'scan' ? 'Default' : 'FullRefresh'; const mode = dlg.querySelector('#selectMetadataRefreshMode').value === 'scan' ? 'Default' : 'FullRefresh';
const replaceAllImages = mode === 'FullRefresh' && dlg.querySelector('.chkReplaceImages').checked; const replaceAllImages = mode === 'FullRefresh' && dlg.querySelector('.chkReplaceImages').checked;
const replaceTrickplayImages = mode === 'FullRefresh' && dlg.querySelector('.chkReplaceTrickplayImages').checked;
options.itemIds.forEach(function (itemId) { options.itemIds.forEach(function (itemId) {
apiClient.refreshItem(itemId, { apiClient.refreshItem(itemId, {
Recursive: true, Recursive: true,
ImageRefreshMode: mode, ImageRefreshMode: mode,
MetadataRefreshMode: mode, MetadataRefreshMode: mode,
ReplaceAllImages: replaceAllImages, ReplaceAllImages: replaceAllImages,
RegenerateTrickplay: replaceTrickplayImages,
ReplaceAllMetadata: replaceAllMetadata ReplaceAllMetadata: replaceAllMetadata
}); });
}); });
@ -134,8 +140,10 @@ class RefreshDialog {
dlg.querySelector('#selectMetadataRefreshMode').addEventListener('change', function () { dlg.querySelector('#selectMetadataRefreshMode').addEventListener('change', function () {
if (this.value === 'scan') { if (this.value === 'scan') {
dlg.querySelector('.fldReplaceExistingImages').classList.add('hide'); dlg.querySelector('.fldReplaceExistingImages').classList.add('hide');
dlg.querySelector('.fldReplaceTrickplayImages').classList.add('hide');
} else { } else {
dlg.querySelector('.fldReplaceExistingImages').classList.remove('hide'); dlg.querySelector('.fldReplaceExistingImages').classList.remove('hide');
dlg.querySelector('.fldReplaceTrickplayImages').classList.remove('hide');
} }
}); });

View file

@ -844,6 +844,8 @@
"LabelRuntimeMinutes": "Runtime", "LabelRuntimeMinutes": "Runtime",
"LabelSaveLocalMetadata": "Save artwork into media folders", "LabelSaveLocalMetadata": "Save artwork into media folders",
"LabelSaveLocalMetadataHelp": "Saving artwork into media folders will put them in a place where they can be easily edited.", "LabelSaveLocalMetadataHelp": "Saving artwork into media folders will put them in a place where they can be easily edited.",
"LabelSaveTrickplayLocally": "Save trickplay images next to media",
"LabelSaveTrickplayLocallyHelp": "Saving trickplay images into media folders will put them next to your media for easy migration and access.",
"LabelScheduledTaskLastRan": "Last ran {0}, taking {1}.", "LabelScheduledTaskLastRan": "Last ran {0}, taking {1}.",
"LabelScreensaver": "Screensaver", "LabelScreensaver": "Screensaver",
"LabelSeasonNumber": "Season number", "LabelSeasonNumber": "Season number",
@ -1390,6 +1392,7 @@
"RepeatOne": "Repeat one", "RepeatOne": "Repeat one",
"ReplaceAllMetadata": "Replace all metadata", "ReplaceAllMetadata": "Replace all metadata",
"ReplaceExistingImages": "Replace existing images", "ReplaceExistingImages": "Replace existing images",
"ReplaceTrickplayImages": "Replace existing trickplay images",
"Reset": "Reset", "Reset": "Reset",
"ResetPassword": "Reset Password", "ResetPassword": "Reset Password",
"ResolutionMatchSource": "Match Source", "ResolutionMatchSource": "Match Source",