mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
sync updates
This commit is contained in:
parent
7b4c01ccd9
commit
d89b860b40
1 changed files with 30 additions and 23 deletions
|
@ -28,16 +28,6 @@
|
||||||
}).popup('close');
|
}).popup('close');
|
||||||
}
|
}
|
||||||
|
|
||||||
function getSyncTargetName(targets, id) {
|
|
||||||
|
|
||||||
var target = targets.filter(function (t) {
|
|
||||||
|
|
||||||
return t.Id == id;
|
|
||||||
})[0];
|
|
||||||
|
|
||||||
return target ? target.Name : 'Unknown Device';
|
|
||||||
}
|
|
||||||
|
|
||||||
function getSyncJobHtml(page, job, cardBoxCssClass, syncJobPage) {
|
function getSyncJobHtml(page, job, cardBoxCssClass, syncJobPage) {
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
|
@ -152,7 +142,7 @@
|
||||||
return html;
|
return html;
|
||||||
}
|
}
|
||||||
|
|
||||||
function loadData(page, jobs, targets) {
|
function loadData(page, jobs) {
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
var lastTargetName = '';
|
var lastTargetName = '';
|
||||||
|
@ -170,7 +160,7 @@
|
||||||
for (var i = 0, length = jobs.length; i < length; i++) {
|
for (var i = 0, length = jobs.length; i < length; i++) {
|
||||||
|
|
||||||
var job = jobs[i];
|
var job = jobs[i];
|
||||||
var targetName = getSyncTargetName(targets, job.TargetId);
|
var targetName = job.TargetName;
|
||||||
|
|
||||||
if (targetName != lastTargetName) {
|
if (targetName != lastTargetName) {
|
||||||
|
|
||||||
|
@ -262,13 +252,9 @@
|
||||||
options.UserId = Dashboard.getCurrentUserId();
|
options.UserId = Dashboard.getCurrentUserId();
|
||||||
}
|
}
|
||||||
|
|
||||||
var promise1 = ApiClient.getJSON(ApiClient.getUrl('Sync/Jobs', options));
|
ApiClient.getJSON(ApiClient.getUrl('Sync/Jobs', options)).done(function (response) {
|
||||||
|
|
||||||
var promise2 = ApiClient.getJSON(ApiClient.getUrl('Sync/Targets', options));
|
loadData(page, response.Items);
|
||||||
|
|
||||||
$.when(promise1, promise2).done(function (response1, response2) {
|
|
||||||
|
|
||||||
loadData(page, response1[0].Items, response2[0]);
|
|
||||||
|
|
||||||
Dashboard.hideLoadingMsg();
|
Dashboard.hideLoadingMsg();
|
||||||
|
|
||||||
|
@ -280,12 +266,31 @@
|
||||||
|
|
||||||
var page = $.mobile.activePage;
|
var page = $.mobile.activePage;
|
||||||
|
|
||||||
if (msg.MessageType == "SyncJobCreated") {
|
if (msg.MessageType == "SyncJobs") {
|
||||||
reloadData(page);
|
loadData(page, msg.Data);
|
||||||
}
|
}
|
||||||
else if (msg.MessageType == "SyncJobCancelled") {
|
}
|
||||||
reloadData(page);
|
|
||||||
|
function startListening(page) {
|
||||||
|
|
||||||
|
var startParams = "0,1500";
|
||||||
|
|
||||||
|
if ($(page).hasClass('mySyncPage')) {
|
||||||
|
startParams += "," + Dashboard.getCurrentUserId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ApiClient.isWebSocketOpen()) {
|
||||||
|
ApiClient.sendWebSocketMessage("SyncJobsStart", startParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function stopListening() {
|
||||||
|
|
||||||
|
if (ApiClient.isWebSocketOpen()) {
|
||||||
|
ApiClient.sendWebSocketMessage("SyncJobsStart", "0,1500");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$(document).on('pageshow', ".syncActivityPage", function () {
|
$(document).on('pageshow', ".syncActivityPage", function () {
|
||||||
|
@ -310,6 +315,7 @@
|
||||||
taskKey: 'SyncPrepare'
|
taskKey: 'SyncPrepare'
|
||||||
});
|
});
|
||||||
|
|
||||||
|
startListening(page);
|
||||||
$(ApiClient).on("websocketmessage.syncactivity", onWebSocketMessage);
|
$(ApiClient).on("websocketmessage.syncactivity", onWebSocketMessage);
|
||||||
|
|
||||||
}).on('pagehide', ".syncActivityPage", function () {
|
}).on('pagehide', ".syncActivityPage", function () {
|
||||||
|
@ -321,6 +327,7 @@
|
||||||
mode: 'off'
|
mode: 'off'
|
||||||
});
|
});
|
||||||
|
|
||||||
|
stopListening();
|
||||||
$(ApiClient).off(".syncactivity");
|
$(ApiClient).off(".syncactivity");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue