mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
64 lines
1.8 KiB
JavaScript
64 lines
1.8 KiB
JavaScript
![]() |
(function (globalScope) {
|
|||
|
|
|||
|
function serverSync(connectionManager) {
|
|||
|
|
|||
|
self.sync = function (server) {
|
|||
|
|
|||
|
var deferred = DeferredBuilder.Deferred();
|
|||
|
|
|||
|
if (!server.AccessToken && !server.ExchangeToken) {
|
|||
|
|
|||
|
Logger.log('Skipping sync to server ' + server.Id + ' because there is no saved authentication information.');
|
|||
|
deferred.resolve();
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
var connectionOptions = {
|
|||
|
updateDateLastAccessed: false,
|
|||
|
enableWebSocket: false,
|
|||
|
reportCapabilities: false
|
|||
|
};
|
|||
|
|
|||
|
connectionManager.connectToServer(server, connectionOptions).done(function (result) {
|
|||
|
|
|||
|
if (result.State == MediaBrowser.ConnectionState.SignedIn) {
|
|||
|
performSync(server, deferred);
|
|||
|
} else {
|
|||
|
Logger.log('Unable to connect to server id: ' + server.Id);
|
|||
|
deferred.reject();
|
|||
|
}
|
|||
|
|
|||
|
}).fail(function () {
|
|||
|
|
|||
|
Logger.log('Unable to connect to server id: ' + server.Id);
|
|||
|
deferred.reject();
|
|||
|
});
|
|||
|
|
|||
|
return deferred.promise();
|
|||
|
};
|
|||
|
|
|||
|
function performSync(server, deferred) {
|
|||
|
|
|||
|
Logger.log("Creating ContentUploader to server: " + server.Id);
|
|||
|
|
|||
|
require(['contentuploader'], function () {
|
|||
|
|
|||
|
new MediaBrowser.ContentUploader(connectionManager).uploadImages(server).done(function () {
|
|||
|
|
|||
|
deferred.resolve();
|
|||
|
|
|||
|
}).fail(function () {
|
|||
|
|
|||
|
deferred.resolve();
|
|||
|
});
|
|||
|
});
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
if (!globalScope.MediaBrowser) {
|
|||
|
globalScope.MediaBrowser = {};
|
|||
|
}
|
|||
|
|
|||
|
globalScope.MediaBrowser.ServerSync = serverSync;
|
|||
|
|
|||
|
})(this);
|