mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
fixes #716 - Make editing sidebar more responsive
This commit is contained in:
parent
23b4891188
commit
f57cde8912
2 changed files with 45 additions and 12 deletions
|
@ -717,7 +717,7 @@
|
|||
Revenue: $('#txtRevenue', form).val(),
|
||||
CriticRating: $('#txtCriticRating', form).val(),
|
||||
CriticRatingSummary: $('#txtCriticRatingSummary', form).val(),
|
||||
IndexNumber: $('#txtIndexNumber', form).val(),
|
||||
IndexNumber: $('#txtIndexNumber', form).val() || null,
|
||||
DisplaySpecialsWithSeasons: $('#chkDisplaySpecialsInline', form).checked(),
|
||||
AbsoluteEpisodeNumber: $('#txtAbsoluteEpisodeNumber', form).val(),
|
||||
DvdEpisodeNumber: $('#txtDvdEpisodeNumber', form).val(),
|
||||
|
@ -725,7 +725,7 @@
|
|||
AirsBeforeSeasonNumber: $('#txtAirsBeforeSeason', form).val(),
|
||||
AirsAfterSeasonNumber: $('#txtAirsAfterSeason', form).val(),
|
||||
AirsBeforeEpisodeNumber: $('#txtAirsBeforeEpisode', form).val(),
|
||||
ParentIndexNumber: $('#txtParentIndexNumber', form).val(),
|
||||
ParentIndexNumber: $('#txtParentIndexNumber', form).val() || null,
|
||||
DisplayOrder: $('#selectDisplayOrder', form).val(),
|
||||
Players: $('#txtPlayers', form).val(),
|
||||
Album: $('#txtAlbum', form).val(),
|
||||
|
@ -813,6 +813,10 @@
|
|||
|
||||
Dashboard.alert('Item saved.');
|
||||
|
||||
MetadataEditor.getItemPromise().done(function (i) {
|
||||
$(form).parents('.page').trigger('itemsaved', [i]);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
return false;
|
||||
|
|
|
@ -4,6 +4,15 @@
|
|||
|
||||
var state = item.IsFolder ? folderState : '';
|
||||
|
||||
var htmlName = getNodeInnerHtml(item);
|
||||
|
||||
var rel = item.IsFolder ? 'folder' : 'default';
|
||||
|
||||
return { attr: { id: item.Id, rel: rel, itemtype: item.Type }, data: htmlName, state: state };
|
||||
}
|
||||
|
||||
function getNodeInnerHtml(item) {
|
||||
|
||||
var name = item.Name;
|
||||
|
||||
// Channel number
|
||||
|
@ -62,9 +71,7 @@
|
|||
|
||||
htmlName += "</div>";
|
||||
|
||||
var rel = item.IsFolder ? 'folder' : 'default';
|
||||
|
||||
return { attr: { id: item.Id, rel: rel, itemtype: item.Type }, data: htmlName, state: state };
|
||||
return htmlName;
|
||||
}
|
||||
|
||||
function loadChildrenOfRootNode(page, callback, openItems, selectedId) {
|
||||
|
@ -95,9 +102,7 @@
|
|||
|
||||
var name = service.Name;
|
||||
|
||||
var cssClass = "editorNode";
|
||||
|
||||
var htmlName = "<div class='" + cssClass + "'>";
|
||||
var htmlName = "<div class='editorNode'>";
|
||||
|
||||
htmlName += name;
|
||||
|
||||
|
@ -247,7 +252,31 @@
|
|||
});
|
||||
}
|
||||
|
||||
$(document).on('pagebeforeshow', ".metadataEditorPage", function () {
|
||||
function updateEditorNode(page, item) {
|
||||
|
||||
var elem = $('#' + item.Id + '>a', page)[0];
|
||||
|
||||
if (elem == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
$('.editorNode', elem).remove();
|
||||
|
||||
$(elem).append(getNodeInnerHtml(item));
|
||||
|
||||
if (item.IsFolder) {
|
||||
|
||||
var tree = jQuery.jstree._reference(".libraryTree");
|
||||
var currentNode = tree._get_node(null, false);
|
||||
tree.refresh(currentNode);
|
||||
}
|
||||
}
|
||||
|
||||
$(document).on('itemsaved', ".metadataEditorPage", function (e, item) {
|
||||
|
||||
updateEditorNode(this, item);
|
||||
|
||||
}).on('pagebeforeshow', ".metadataEditorPage", function () {
|
||||
|
||||
window.MetadataEditor = new metadataEditor();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue