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

switch to subtitle filter

This commit is contained in:
Luke Pulverenti 2014-06-10 13:36:06 -04:00
parent c98448df25
commit c55d6e3511
4 changed files with 46 additions and 51 deletions

View file

@ -24,7 +24,6 @@
<div class="readOnlyContent" style="max-width: 700px;"> <div class="readOnlyContent" style="max-width: 700px;">
<div class="subtitleList"></div> <div class="subtitleList"></div>
</div> </div>
<br />
<h1>${HeaderSearchForSubtitles}</h1> <h1>${HeaderSearchForSubtitles}</h1>
<form class="subtitleSearchForm"> <form class="subtitleSearchForm">

View file

@ -91,17 +91,25 @@
function fillSubtitleList(page, item) { function fillSubtitleList(page, item) {
var html = '<ul data-role="listview" data-split-icon="delete"><li data-role="list-divider">Current Subtitles</li>';
var streams = item.MediaStreams || []; var streams = item.MediaStreams || [];
html += streams.filter(function (s) { var subs = streams.filter(function (s) {
return s.Type == 'Subtitle'; return s.Type == 'Subtitle';
});
}).map(function (s) { var html = '';
var itemHtml = '<li><a class="btnViewSubtitles" href="#" data-index="' + s.Index + '">'; if (subs.length) {
html += '<br/>';
html += '<ul data-role="listview" data-split-icon="delete"><li data-role="list-divider">Current Subtitles</li>';
html += subs.map(function (s) {
var cssClass = s.Path ? 'btnViewSubtitles' : '';
var itemHtml = '<li><a class="' + cssClass + '" href="#" data-index="' + s.Index + '">';
itemHtml += '<p>' + (s.Language || 'Unknown language') + '</p>'; itemHtml += '<p>' + (s.Language || 'Unknown language') + '</p>';
@ -140,6 +148,7 @@
}).join(''); }).join('');
html += '</ul>'; html += '</ul>';
}
var elem = $('.subtitleList', page).html(html).trigger('create'); var elem = $('.subtitleList', page).html(html).trigger('create');

View file

@ -76,31 +76,18 @@
function loadChildrenOfRootNode(page, callback, openItems, selectedId) { function loadChildrenOfRootNode(page, callback, openItems, selectedId) {
var promise2 = ApiClient.getLiveTvInfo(); var promise2 = ApiClient.getLiveTvChannels({limit: 0});
$.when(promise2).done(function (response2) { $.when(promise2).done(function (response2) {
var liveTvInfo = response2; var result = response2;
var nodes = []; var nodes = [];
var i, length;
nodes.push({ attr: { id: 'MediaFolders', rel: 'folder', itemtype: 'mediafolders' }, data: 'Media Folders', state: 'open' }); nodes.push({ attr: { id: 'MediaFolders', rel: 'folder', itemtype: 'mediafolders' }, data: 'Media Folders', state: 'open' });
for (i = 0, length = liveTvInfo.Services.length; i < length; i++) { if (result.TotalRecordCount) {
nodes.push({ attr: { id: 'livetv', rel: 'folder', itemtype: 'livetv' }, data: 'Live TV', state: 'closed' });
var service = liveTvInfo.Services[i];
var name = service.Name;
var htmlName = "<div class='editorNode'>";
htmlName += name;
htmlName += "</div>";
nodes.push({ attr: { id: name, rel: 'folder', itemtype: 'livetvservice' }, data: htmlName, state: 'closed' });
} }
callback(nodes); callback(nodes);
@ -164,7 +151,7 @@
var itemtype = node.attr("itemtype"); var itemtype = node.attr("itemtype");
if (itemtype == 'livetvservice') { if (itemtype == 'livetv') {
loadLiveTvChannels(id, openItems, callback); loadLiveTvChannels(id, openItems, callback);
return; return;
@ -256,7 +243,7 @@
itemType: data.rslt.obj.attr("itemtype") itemType: data.rslt.obj.attr("itemtype")
}; };
if (eventData.itemType != 'livetvservice' && eventData.itemType != 'mediafolders') { if (eventData.itemType != 'livetv' && eventData.itemType != 'mediafolders') {
$(this).trigger('itemclicked', [eventData]); $(this).trigger('itemclicked', [eventData]);
} }

View file

@ -131,7 +131,7 @@
}); });
} }
function getLibraryMenu(user, channelCount, items, liveTvInfo) { function getLibraryMenu() {
var panel = $('#libraryPanel'); var panel = $('#libraryPanel');
@ -146,7 +146,7 @@
html += '<a class="lnkMediaFolder viewMenuLink viewMenuTextLink homeViewMenu" href="index.html">Home</a>'; html += '<a class="lnkMediaFolder viewMenuLink viewMenuTextLink homeViewMenu" href="index.html">Home</a>';
html += '<div class="libraryMenuDivider"></div>'; html += '<div class="libraryMenuDivider"></div>';
html += getViewsHtml(user, channelCount, items, liveTvInfo); html += getViewsHtml();
html += '</div>'; html += '</div>';
html += '</div>'; html += '</div>';