mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
change deferred to promise
This commit is contained in:
parent
404073e540
commit
3e1fd2ec8a
3 changed files with 141 additions and 182 deletions
|
@ -292,7 +292,7 @@
|
||||||
return connectionMode;
|
return connectionMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
function tryReconnectInternal(deferred, connectionMode, currentRetryCount) {
|
function tryReconnectInternal(resolve, reject, connectionMode, currentRetryCount) {
|
||||||
|
|
||||||
connectionMode = switchConnectionMode(connectionMode);
|
connectionMode = switchConnectionMode(connectionMode);
|
||||||
var url = MediaBrowser.ServerInfo.getServerAddress(self.serverInfo(), connectionMode);
|
var url = MediaBrowser.ServerInfo.getServerAddress(self.serverInfo(), connectionMode);
|
||||||
|
@ -316,7 +316,7 @@
|
||||||
self.serverInfo().LastConnectionMode = connectionMode;
|
self.serverInfo().LastConnectionMode = connectionMode;
|
||||||
self.serverAddress(url);
|
self.serverAddress(url);
|
||||||
|
|
||||||
deferred.resolve();
|
resolve();
|
||||||
|
|
||||||
}, function () {
|
}, function () {
|
||||||
|
|
||||||
|
@ -327,22 +327,23 @@
|
||||||
var newConnectionMode = switchConnectionMode(connectionMode);
|
var newConnectionMode = switchConnectionMode(connectionMode);
|
||||||
|
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
tryReconnectInternal(deferred, newConnectionMode, currentRetryCount + 1);
|
tryReconnectInternal(resolve, reject, newConnectionMode, currentRetryCount + 1);
|
||||||
}, 500);
|
}, 500);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
deferred.reject();
|
reject();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function tryReconnect() {
|
function tryReconnect() {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
tryReconnectInternal(deferred, self.serverInfo().LastConnectionMode, 0);
|
tryReconnectInternal(resolve, reject, self.serverInfo().LastConnectionMode, 0);
|
||||||
}, 500);
|
}, 500);
|
||||||
return deferred.promise();
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
self.fetchWithFailover = function (request, enableReconnection) {
|
self.fetchWithFailover = function (request, enableReconnection) {
|
||||||
|
@ -589,54 +590,35 @@
|
||||||
Size: byteSize
|
Size: byteSize
|
||||||
});
|
});
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
|
||||||
|
|
||||||
var now = new Date().getTime();
|
var now = new Date().getTime();
|
||||||
|
|
||||||
self.get(url).then(function () {
|
return self.get(url).then(function () {
|
||||||
|
|
||||||
var responseTimeSeconds = (new Date().getTime() - now) / 1000;
|
var responseTimeSeconds = (new Date().getTime() - now) / 1000;
|
||||||
var bytesPerSecond = byteSize / responseTimeSeconds;
|
var bytesPerSecond = byteSize / responseTimeSeconds;
|
||||||
var bitrate = Math.round(bytesPerSecond * 8);
|
var bitrate = Math.round(bytesPerSecond * 8);
|
||||||
|
|
||||||
deferred.resolveWith(null, [bitrate]);
|
return bitrate;
|
||||||
|
|
||||||
}, function () {
|
|
||||||
|
|
||||||
deferred.reject();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return deferred.promise();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
self.detectBitrate = function () {
|
self.detectBitrate = function () {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
|
||||||
|
|
||||||
// First try a small amount so that we don't hang up their mobile connection
|
// First try a small amount so that we don't hang up their mobile connection
|
||||||
self.getDownloadSpeed(1000000).then(function (bitrate) {
|
return self.getDownloadSpeed(1000000).then(function (bitrate) {
|
||||||
|
|
||||||
if (bitrate < 1000000) {
|
if (bitrate < 1000000) {
|
||||||
deferred.resolveWith(null, [Math.round(bitrate * .8)]);
|
return Math.round(bitrate * .8);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
// If that produced a fairly high speed, try again with a larger size to get a more accurate result
|
// If that produced a fairly high speed, try again with a larger size to get a more accurate result
|
||||||
self.getDownloadSpeed(2400000).then(function (bitrate) {
|
return self.getDownloadSpeed(2400000).then(function (bitrate) {
|
||||||
|
|
||||||
deferred.resolveWith(null, [Math.round(bitrate * .8)]);
|
return Math.round(bitrate * .8);
|
||||||
|
|
||||||
}, function () {
|
|
||||||
|
|
||||||
deferred.reject();
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
}, function () {
|
|
||||||
|
|
||||||
deferred.reject();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return deferred.promise();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -735,10 +717,11 @@
|
||||||
}).then(done, done);
|
}).then(done, done);
|
||||||
}
|
}
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
done();
|
done();
|
||||||
deferred.resolveWith(null, []);
|
resolve();
|
||||||
return deferred.promise();
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
function getRemoteImagePrefix(options) {
|
function getRemoteImagePrefix(options) {
|
||||||
|
@ -1964,16 +1947,16 @@
|
||||||
throw new Error("File must be an image.");
|
throw new Error("File must be an image.");
|
||||||
}
|
}
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
var reader = new FileReader();
|
var reader = new FileReader();
|
||||||
|
|
||||||
reader.onerror = function () {
|
reader.onerror = function () {
|
||||||
deferred.reject();
|
reject();
|
||||||
};
|
};
|
||||||
|
|
||||||
reader.onabort = function () {
|
reader.onabort = function () {
|
||||||
deferred.reject();
|
reject();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Closure to capture the file information.
|
// Closure to capture the file information.
|
||||||
|
@ -1991,17 +1974,16 @@
|
||||||
contentType: "image/" + file.name.substring(file.name.lastIndexOf('.') + 1)
|
contentType: "image/" + file.name.substring(file.name.lastIndexOf('.') + 1)
|
||||||
}).then(function (result) {
|
}).then(function (result) {
|
||||||
|
|
||||||
deferred.resolveWith(null, [result]);
|
resolve(result);
|
||||||
|
|
||||||
}, function () {
|
}, function () {
|
||||||
deferred.reject();
|
reject();
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
// Read in the image file as a data URL.
|
// Read in the image file as a data URL.
|
||||||
reader.readAsDataURL(file);
|
reader.readAsDataURL(file);
|
||||||
|
});
|
||||||
return deferred.promise();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
self.uploadItemImage = function (itemId, imageType, file) {
|
self.uploadItemImage = function (itemId, imageType, file) {
|
||||||
|
@ -2026,16 +2008,16 @@
|
||||||
|
|
||||||
url += "/" + imageType;
|
url += "/" + imageType;
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
var reader = new FileReader();
|
var reader = new FileReader();
|
||||||
|
|
||||||
reader.onerror = function () {
|
reader.onerror = function () {
|
||||||
deferred.reject();
|
reject();
|
||||||
};
|
};
|
||||||
|
|
||||||
reader.onabort = function () {
|
reader.onabort = function () {
|
||||||
deferred.reject();
|
reject();
|
||||||
};
|
};
|
||||||
|
|
||||||
// Closure to capture the file information.
|
// Closure to capture the file information.
|
||||||
|
@ -2051,17 +2033,16 @@
|
||||||
contentType: "image/" + file.name.substring(file.name.lastIndexOf('.') + 1)
|
contentType: "image/" + file.name.substring(file.name.lastIndexOf('.') + 1)
|
||||||
}).then(function (result) {
|
}).then(function (result) {
|
||||||
|
|
||||||
deferred.resolveWith(null, [result]);
|
resolve(result);
|
||||||
|
|
||||||
}, function () {
|
}, function () {
|
||||||
deferred.reject();
|
reject();
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
// Read in the image file as a data URL.
|
// Read in the image file as a data URL.
|
||||||
reader.readAsDataURL(file);
|
reader.readAsDataURL(file);
|
||||||
|
});
|
||||||
return deferred.promise();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2425,11 +2406,11 @@
|
||||||
*/
|
*/
|
||||||
self.authenticateUserByName = function (name, password) {
|
self.authenticateUserByName = function (name, password) {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
if (!name) {
|
if (!name) {
|
||||||
deferred.reject();
|
reject();
|
||||||
return deferred.promise();
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var url = self.getUrl("Users/authenticatebyname");
|
var url = self.getUrl("Users/authenticatebyname");
|
||||||
|
@ -2453,15 +2434,11 @@
|
||||||
self.onAuthenticated(self, result);
|
self.onAuthenticated(self, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
deferred.resolveWith(null, [result]);
|
resolve(result);
|
||||||
|
|
||||||
}, function () {
|
}, reject);
|
||||||
|
|
||||||
deferred.reject();
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
return deferred.promise();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2472,11 +2449,11 @@
|
||||||
*/
|
*/
|
||||||
self.updateUserPassword = function (userId, currentPassword, newPassword) {
|
self.updateUserPassword = function (userId, currentPassword, newPassword) {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
if (!userId) {
|
if (!userId) {
|
||||||
deferred.reject();
|
reject();
|
||||||
return deferred.promise();
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var url = self.getUrl("Users/" + userId + "/Password");
|
var url = self.getUrl("Users/" + userId + "/Password");
|
||||||
|
@ -2490,17 +2467,9 @@
|
||||||
currentPassword: CryptoJS.SHA1(currentPassword).toString(),
|
currentPassword: CryptoJS.SHA1(currentPassword).toString(),
|
||||||
newPassword: CryptoJS.SHA1(newPassword).toString()
|
newPassword: CryptoJS.SHA1(newPassword).toString()
|
||||||
}
|
}
|
||||||
}).then(function (result) {
|
}).then(resolve, reject);
|
||||||
|
|
||||||
deferred.resolveWith(null, [result]);
|
|
||||||
|
|
||||||
}, function () {
|
|
||||||
|
|
||||||
deferred.reject();
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
return deferred.promise();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2510,11 +2479,11 @@
|
||||||
*/
|
*/
|
||||||
self.updateEasyPassword = function (userId, newPassword) {
|
self.updateEasyPassword = function (userId, newPassword) {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
if (!userId) {
|
if (!userId) {
|
||||||
deferred.reject();
|
reject();
|
||||||
return deferred.promise();
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var url = self.getUrl("Users/" + userId + "/EasyPassword");
|
var url = self.getUrl("Users/" + userId + "/EasyPassword");
|
||||||
|
@ -2527,17 +2496,9 @@
|
||||||
data: {
|
data: {
|
||||||
newPassword: CryptoJS.SHA1(newPassword).toString()
|
newPassword: CryptoJS.SHA1(newPassword).toString()
|
||||||
}
|
}
|
||||||
}).then(function (result) {
|
}).then(resolve, reject);
|
||||||
|
|
||||||
deferred.resolveWith(null, [result]);
|
|
||||||
|
|
||||||
}, function () {
|
|
||||||
|
|
||||||
deferred.reject();
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
return deferred.promise();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3211,14 +3172,12 @@
|
||||||
|
|
||||||
if (self.isWebSocketOpen()) {
|
if (self.isWebSocketOpen()) {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
var msg = JSON.stringify(options);
|
var msg = JSON.stringify(options);
|
||||||
|
|
||||||
self.sendWebSocketMessage("ReportPlaybackProgress", msg);
|
self.sendWebSocketMessage("ReportPlaybackProgress", msg);
|
||||||
|
resolve();
|
||||||
deferred.resolveWith(null, []);
|
});
|
||||||
return deferred.promise();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var url = self.getUrl("Sessions/Playing/Progress");
|
var url = self.getUrl("Sessions/Playing/Progress");
|
||||||
|
|
|
@ -4,15 +4,14 @@
|
||||||
|
|
||||||
findServers: function (timeoutMs) {
|
findServers: function (timeoutMs) {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
var servers = [];
|
var servers = [];
|
||||||
|
|
||||||
// Expected server properties
|
// Expected server properties
|
||||||
// Name, Id, Address, EndpointAddress (optional)
|
// Name, Id, Address, EndpointAddress (optional)
|
||||||
|
resolve(servers);
|
||||||
deferred.resolveWith(null, [servers]);
|
});
|
||||||
return deferred.promise();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -2,9 +2,10 @@
|
||||||
|
|
||||||
function send(info) {
|
function send(info) {
|
||||||
|
|
||||||
var deferred = DeferredBuilder.Deferred();
|
return new Promise(function (resolve, reject) {
|
||||||
deferred.resolve();
|
|
||||||
return deferred.promise();
|
resolve();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
globalScope.WakeOnLan = {
|
globalScope.WakeOnLan = {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue