mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
merge from dev
This commit is contained in:
parent
1c8f02ce0f
commit
33b01d778c
911 changed files with 34157 additions and 57125 deletions
|
@ -8,7 +8,7 @@
|
|||
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
|
||||
LocalAssetManager.getCameraPhotos().done(function (photos) {
|
||||
LocalAssetManager.getCameraPhotos().then(function (photos) {
|
||||
|
||||
if (!photos.length) {
|
||||
deferred.resolve();
|
||||
|
@ -17,7 +17,7 @@
|
|||
|
||||
var apiClient = connectionManager.getApiClient(server.Id);
|
||||
|
||||
apiClient.getContentUploadHistory().done(function (uploadHistory) {
|
||||
apiClient.getContentUploadHistory().then(function (uploadHistory) {
|
||||
|
||||
photos = getFilesToUpload(photos, uploadHistory);
|
||||
|
||||
|
@ -25,11 +25,11 @@
|
|||
|
||||
uploadNext(photos, 0, server, apiClient, deferred);
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
deferred.reject();
|
||||
});
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
deferred.reject();
|
||||
});
|
||||
|
||||
|
@ -67,10 +67,10 @@
|
|||
return;
|
||||
}
|
||||
|
||||
uploadFile(files[index], apiClient).done(function () {
|
||||
uploadFile(files[index], apiClient).then(function () {
|
||||
|
||||
uploadNext(files, index + 1, server, apiClient, deferred);
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
uploadNext(files, index + 1, server, apiClient, deferred);
|
||||
});
|
||||
}
|
||||
|
@ -93,12 +93,12 @@
|
|||
|
||||
Logger.log('Uploading file to ' + url);
|
||||
|
||||
new MediaBrowser.FileUpload().upload(file, name, url).done(function () {
|
||||
new MediaBrowser.FileUpload().upload(file, name, url).then(function () {
|
||||
|
||||
Logger.log('File upload succeeded');
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
|
||||
Logger.log('File upload failed');
|
||||
deferred.reject();
|
||||
|
|
|
@ -8,26 +8,26 @@
|
|||
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
|
||||
reportOfflineActions(apiClient, serverInfo).done(function () {
|
||||
reportOfflineActions(apiClient, serverInfo).then(function () {
|
||||
|
||||
// Do the first data sync
|
||||
syncData(apiClient, serverInfo, false).done(function () {
|
||||
syncData(apiClient, serverInfo, false).then(function () {
|
||||
|
||||
// Download new content
|
||||
getNewMedia(apiClient, serverInfo, options).done(function () {
|
||||
getNewMedia(apiClient, serverInfo, options).then(function () {
|
||||
|
||||
// Do the second data sync
|
||||
syncData(apiClient, serverInfo, false).done(function () {
|
||||
syncData(apiClient, serverInfo, false).then(function () {
|
||||
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
return deferred.promise();
|
||||
};
|
||||
|
@ -40,24 +40,24 @@
|
|||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.getOfflineActions(serverInfo.Id).done(function (actions) {
|
||||
LocalAssetManager.getOfflineActions(serverInfo.Id).then(function (actions) {
|
||||
|
||||
if (!actions.length) {
|
||||
deferred.resolve();
|
||||
return;
|
||||
}
|
||||
|
||||
apiClient.reportOfflineActions(actions).done(function () {
|
||||
apiClient.reportOfflineActions(actions).then(function () {
|
||||
|
||||
LocalAssetManager.deleteOfflineActions(actions).done(function () {
|
||||
LocalAssetManager.deleteOfflineActions(actions).then(function () {
|
||||
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
});
|
||||
|
||||
return deferred.promise();
|
||||
|
@ -71,7 +71,7 @@
|
|||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.getServerItemIds(serverInfo.Id).done(function (localIds) {
|
||||
LocalAssetManager.getServerItemIds(serverInfo.Id).then(function (localIds) {
|
||||
|
||||
var request = {
|
||||
TargetId: apiClient.deviceId(),
|
||||
|
@ -79,13 +79,13 @@
|
|||
OfflineUserIds: (serverInfo.Users || []).map(function (u) { return u.Id; })
|
||||
};
|
||||
|
||||
apiClient.syncData(request).done(function (result) {
|
||||
apiClient.syncData(request).then(function (result) {
|
||||
|
||||
afterSyncData(apiClient, serverInfo, syncUserItemAccess, result, deferred);
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
});
|
||||
|
||||
return deferred.promise();
|
||||
|
@ -95,20 +95,20 @@
|
|||
|
||||
Logger.log('Begin afterSyncData');
|
||||
|
||||
removeLocalItems(syncDataResult, serverInfo.Id).done(function (result) {
|
||||
removeLocalItems(syncDataResult, serverInfo.Id).then(function (result) {
|
||||
|
||||
if (enableSyncUserItemAccess) {
|
||||
syncUserItemAccess(syncDataResult, serverInfo.Id).done(function () {
|
||||
syncUserItemAccess(syncDataResult, serverInfo.Id).then(function () {
|
||||
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
}
|
||||
else {
|
||||
deferred.resolve();
|
||||
}
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
deferred.resolve();
|
||||
}
|
||||
|
@ -134,10 +134,10 @@
|
|||
return;
|
||||
}
|
||||
|
||||
removeLocalItem(itemIdsToRemove[index], serverId).done(function () {
|
||||
removeLocalItem(itemIdsToRemove[index], serverId).then(function () {
|
||||
|
||||
removeNextLocalItem(itemIdsToRemove, index + 1, serverId, deferred);
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
removeNextLocalItem(itemIdsToRemove, index + 1, serverId, deferred);
|
||||
});
|
||||
}
|
||||
|
@ -150,11 +150,11 @@
|
|||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.removeLocalItem(itemId, serverId).done(function (localIds) {
|
||||
LocalAssetManager.removeLocalItem(itemId, serverId).then(function (localIds) {
|
||||
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
});
|
||||
|
||||
return deferred.promise();
|
||||
|
@ -166,11 +166,11 @@
|
|||
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
|
||||
apiClient.getReadySyncItems(apiClient.deviceId()).done(function (jobItems) {
|
||||
apiClient.getReadySyncItems(apiClient.deviceId()).then(function (jobItems) {
|
||||
|
||||
getNextNewItem(jobItems, 0, apiClient, serverInfo, options, deferred);
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
return deferred.promise();
|
||||
}
|
||||
|
@ -194,7 +194,7 @@
|
|||
}
|
||||
};
|
||||
|
||||
getNewItem(jobItems[index], apiClient, serverInfo, options).done(goNext).fail(goNext);
|
||||
getNewItem(jobItems[index], apiClient, serverInfo, options).then(goNext, goNext);
|
||||
}
|
||||
|
||||
function getNewItem(jobItem, apiClient, serverInfo, options) {
|
||||
|
@ -206,32 +206,32 @@
|
|||
require(['localassetmanager'], function () {
|
||||
|
||||
var libraryItem = jobItem.Item;
|
||||
LocalAssetManager.createLocalItem(libraryItem, serverInfo, jobItem.OriginalFileName).done(function (localItem) {
|
||||
LocalAssetManager.createLocalItem(libraryItem, serverInfo, jobItem.OriginalFileName).then(function (localItem) {
|
||||
|
||||
downloadMedia(apiClient, jobItem, localItem, options).done(function (isQueued) {
|
||||
downloadMedia(apiClient, jobItem, localItem, options).then(function (isQueued) {
|
||||
|
||||
if (isQueued) {
|
||||
deferred.resolve();
|
||||
return;
|
||||
}
|
||||
|
||||
getImages(apiClient, jobItem, localItem).done(function () {
|
||||
getImages(apiClient, jobItem, localItem).then(function () {
|
||||
|
||||
getSubtitles(apiClient, jobItem, localItem).done(function () {
|
||||
getSubtitles(apiClient, jobItem, localItem).then(function () {
|
||||
|
||||
apiClient.reportSyncJobItemTransferred(jobItem.SyncJobItemId).done(function () {
|
||||
apiClient.reportSyncJobItemTransferred(jobItem.SyncJobItemId).then(function () {
|
||||
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
});
|
||||
|
||||
return deferred.promise();
|
||||
|
@ -254,19 +254,19 @@
|
|||
|
||||
options = options || {};
|
||||
|
||||
LocalAssetManager.downloadFile(url, localPath, options.enableBackgroundTransfer, options.enableNewDownloads).done(function (path, isQueued) {
|
||||
LocalAssetManager.downloadFile(url, localPath, options.enableBackgroundTransfer, options.enableNewDownloads).then(function (path, isQueued) {
|
||||
|
||||
if (isQueued) {
|
||||
deferred.resolveWith(null, [true]);
|
||||
return;
|
||||
}
|
||||
LocalAssetManager.addOrUpdateLocalItem(localItem).done(function () {
|
||||
LocalAssetManager.addOrUpdateLocalItem(localItem).then(function () {
|
||||
|
||||
deferred.resolveWith(null, [false]);
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
});
|
||||
|
||||
|
@ -334,7 +334,7 @@
|
|||
return;
|
||||
}
|
||||
|
||||
downloadImage(apiClient, serverId, itemId, imageTag, imageType).done(function () {
|
||||
downloadImage(apiClient, serverId, itemId, imageTag, imageType).then(function () {
|
||||
|
||||
// For the sake of simplicity, limit to one image
|
||||
deferred.resolve();
|
||||
|
@ -342,7 +342,7 @@
|
|||
|
||||
getNextImage(index + 1, apiClient, localItem, deferred);
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
}
|
||||
|
||||
function downloadImage(apiClient, serverId, itemId, imageTag, imageType) {
|
||||
|
@ -352,7 +352,7 @@
|
|||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.hasImage(serverId, itemId, imageTag).done(function (hasImage) {
|
||||
LocalAssetManager.hasImage(serverId, itemId, imageTag).then(function (hasImage) {
|
||||
|
||||
if (hasImage) {
|
||||
deferred.resolve();
|
||||
|
@ -365,11 +365,11 @@
|
|||
api_key: apiClient.accessToken()
|
||||
});
|
||||
|
||||
LocalAssetManager.downloadImage(imageUrl, serverId, itemId, imageTag).done(function () {
|
||||
LocalAssetManager.downloadImage(imageUrl, serverId, itemId, imageTag).then(function () {
|
||||
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
});
|
||||
});
|
||||
|
@ -412,11 +412,11 @@
|
|||
return;
|
||||
}
|
||||
|
||||
getItemSubtitle(file, apiClient, jobItem, localItem, mediaSource).done(function () {
|
||||
getItemSubtitle(file, apiClient, jobItem, localItem, mediaSource).then(function () {
|
||||
|
||||
getNextSubtitle(files, index + 1, apiClient, jobItem, localItem, mediaSource, deferred);
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
getNextSubtitle(files, index + 1, apiClient, jobItem, localItem, mediaSource, deferred);
|
||||
});
|
||||
}
|
||||
|
@ -445,14 +445,14 @@
|
|||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.downloadSubtitles(url, localItem, subtitleStream).done(function (subtitlePath) {
|
||||
LocalAssetManager.downloadSubtitles(url, localItem, subtitleStream).then(function (subtitlePath) {
|
||||
|
||||
subtitleStream.Path = subtitlePath;
|
||||
LocalAssetManager.addOrUpdateLocalItem(localItem).done(function () {
|
||||
LocalAssetManager.addOrUpdateLocalItem(localItem).then(function () {
|
||||
deferred.resolve();
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
});
|
||||
|
||||
return deferred.promise();
|
||||
|
@ -483,10 +483,10 @@
|
|||
return;
|
||||
}
|
||||
|
||||
syncUserAccessForItem(itemIds[index], syncDataResult).done(function () {
|
||||
syncUserAccessForItem(itemIds[index], syncDataResult).then(function () {
|
||||
|
||||
syncNextUserAccessForItem(itemIds, index + 1, syncDataResult, serverId, deferred);
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
syncNextUserAccessForItem(itemIds, index + 1, syncDataResult, serverId, deferred);
|
||||
});
|
||||
}
|
||||
|
@ -498,7 +498,7 @@
|
|||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.getUserIdsWithAccess(itemId, serverId).done(function (savedUserIdsWithAccess) {
|
||||
LocalAssetManager.getUserIdsWithAccess(itemId, serverId).then(function (savedUserIdsWithAccess) {
|
||||
|
||||
var userIdsWithAccess = syncDataResult.ItemUserAccess[itemId];
|
||||
|
||||
|
@ -508,12 +508,12 @@
|
|||
}
|
||||
else {
|
||||
|
||||
LocalAssetManager.saveUserIdsWithAccess(itemId, serverId, userIdsWithAccess).done(function () {
|
||||
LocalAssetManager.saveUserIdsWithAccess(itemId, serverId, userIdsWithAccess).then(function () {
|
||||
deferred.resolve();
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
}
|
||||
|
||||
}).fail(getOnFail(deferred));
|
||||
}, getOnFail(deferred));
|
||||
});
|
||||
|
||||
return deferred.promise();
|
||||
|
|
|
@ -31,11 +31,11 @@
|
|||
|
||||
require(['serversync'], function () {
|
||||
|
||||
new MediaBrowser.ServerSync(connectionManager).sync(server, options).done(function () {
|
||||
new MediaBrowser.ServerSync(connectionManager).sync(server, options).then(function () {
|
||||
|
||||
syncNext(servers, index + 1, options, deferred);
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
|
||||
syncNext(servers, index + 1, options, deferred);
|
||||
});
|
||||
|
|
|
@ -24,10 +24,10 @@
|
|||
return;
|
||||
}
|
||||
|
||||
syncUser(users[index], apiClient).done(function () {
|
||||
syncUser(users[index], apiClient).then(function () {
|
||||
|
||||
syncNext(users, index + 1, deferred, apiClient, server);
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
syncNext(users, index + 1, deferred, apiClient, server);
|
||||
});
|
||||
}
|
||||
|
@ -36,26 +36,26 @@
|
|||
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
|
||||
apiClient.getOfflineUser(user.Id).done(function (result) {
|
||||
apiClient.getOfflineUser(user.Id).then(function (result) {
|
||||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.saveOfflineUser(result).done(function () {
|
||||
LocalAssetManager.saveOfflineUser(result).then(function () {
|
||||
deferred.resolve();
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
deferred.resolve();
|
||||
});
|
||||
});
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
|
||||
// TODO: We should only delete if there's a 401 response
|
||||
|
||||
require(['localassetmanager'], function () {
|
||||
|
||||
LocalAssetManager.deleteOfflineUser(user.Id).done(function () {
|
||||
LocalAssetManager.deleteOfflineUser(user.Id).then(function () {
|
||||
deferred.resolve();
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
deferred.resolve();
|
||||
});
|
||||
});
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
reportCapabilities: false
|
||||
};
|
||||
|
||||
connectionManager.connectToServer(server, connectionOptions).done(function (result) {
|
||||
connectionManager.connectToServer(server, connectionOptions).then(function (result) {
|
||||
|
||||
if (result.State == MediaBrowser.ConnectionState.SignedIn) {
|
||||
performSync(server, options, deferred);
|
||||
|
@ -30,7 +30,7 @@
|
|||
deferred.reject();
|
||||
}
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
|
||||
Logger.log('Unable to connect to server id: ' + server.Id);
|
||||
deferred.reject();
|
||||
|
@ -62,13 +62,13 @@
|
|||
|
||||
require(['contentuploader'], function () {
|
||||
|
||||
new MediaBrowser.ContentUploader(connectionManager).uploadImages(server).done(function () {
|
||||
new MediaBrowser.ContentUploader(connectionManager).uploadImages(server).then(function () {
|
||||
|
||||
Logger.log("ContentUploaded succeeded to server: " + server.Id);
|
||||
|
||||
nextAction();
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
|
||||
Logger.log("ContentUploaded failed to server: " + server.Id);
|
||||
|
||||
|
@ -88,13 +88,13 @@
|
|||
|
||||
var apiClient = connectionManager.getApiClient(server.Id);
|
||||
|
||||
new MediaBrowser.OfflineUserSync().sync(apiClient, server).done(function () {
|
||||
new MediaBrowser.OfflineUserSync().sync(apiClient, server).then(function () {
|
||||
|
||||
Logger.log("OfflineUserSync succeeded to server: " + server.Id);
|
||||
|
||||
syncMedia(server, options, deferred);
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
|
||||
Logger.log("OfflineUserSync failed to server: " + server.Id);
|
||||
|
||||
|
@ -109,13 +109,13 @@
|
|||
|
||||
var apiClient = connectionManager.getApiClient(server.Id);
|
||||
|
||||
new MediaBrowser.MediaSync().sync(apiClient, server, options).done(function () {
|
||||
new MediaBrowser.MediaSync().sync(apiClient, server, options).then(function () {
|
||||
|
||||
Logger.log("MediaSync succeeded to server: " + server.Id);
|
||||
|
||||
deferred.resolve();
|
||||
|
||||
}).fail(function () {
|
||||
}, function () {
|
||||
|
||||
Logger.log("MediaSync failed to server: " + server.Id);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue