import { appHost } from '../apphost'; import dialogHelper from '../dialogHelper/dialogHelper'; import layoutManager from '../layoutManager'; import globalize from '../../scripts/globalize'; import * as userSettings from '../../scripts/settings/userSettings'; import loading from '../loading/loading'; import focusManager from '../focusManager'; import dom from '../../scripts/dom'; import '../../elements/emby-select/emby-select'; import '../listview/listview.css'; import '../../elements/emby-button/paper-icon-button-light'; import '../formdialog.css'; import 'material-design-icons-iconfont'; import './subtitleeditor.css'; import '../../elements/emby-button/emby-button'; import '../../assets/css/flexstyles.scss'; import ServerConnections from '../ServerConnections'; import toast from '../toast/toast'; import confirm from '../confirm/confirm'; import template from './subtitleeditor.template.html'; let currentItem; let hasChanges; function downloadRemoteSubtitles(context, id) { const url = 'Items/' + currentItem.Id + '/RemoteSearch/Subtitles/' + id; const apiClient = ServerConnections.getApiClient(currentItem.ServerId); apiClient.ajax({ type: 'POST', url: apiClient.getUrl(url) }).then(function () { hasChanges = true; toast(globalize.translate('MessageDownloadQueued')); focusManager.autoFocus(context); }); } function deleteLocalSubtitle(context, index) { const msg = globalize.translate('MessageAreYouSureDeleteSubtitles'); confirm({ title: globalize.translate('ConfirmDeletion'), text: msg, confirmText: globalize.translate('Delete'), primary: 'delete' }).then(function () { loading.show(); const itemId = currentItem.Id; const url = 'Videos/' + itemId + '/Subtitles/' + index; const apiClient = ServerConnections.getApiClient(currentItem.ServerId); apiClient.ajax({ type: 'DELETE', url: apiClient.getUrl(url) }).then(function () { hasChanges = true; reload(context, apiClient, itemId); }); }); } function fillSubtitleList(context, item) { const streams = item.MediaStreams || []; const subs = streams.filter(function (s) { return s.Type === 'Subtitle'; }); let html = ''; if (subs.length) { html += '