mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update card layouts
This commit is contained in:
parent
8f4f29888e
commit
bb38230c23
46 changed files with 1086 additions and 332 deletions
117
dashboard-ui/thirdparty/cordova/serverdiscovery.js
vendored
117
dashboard-ui/thirdparty/cordova/serverdiscovery.js
vendored
|
@ -14,28 +14,29 @@
|
|||
return String.fromCharCode.apply(null, new Uint16Array(buf));
|
||||
}
|
||||
|
||||
globalScope.ServerDiscovery = {
|
||||
function findServersInternal(timeoutMs) {
|
||||
|
||||
findServers: function (timeoutMs) {
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
var servers = [];
|
||||
|
||||
var servers = [];
|
||||
// Expected server properties
|
||||
// Name, Id, Address, EndpointAddress (optional)
|
||||
|
||||
// Expected server properties
|
||||
// Name, Id, Address, EndpointAddress (optional)
|
||||
var chrome = globalScope.chrome;
|
||||
|
||||
var chrome = globalScope.chrome;
|
||||
if (!chrome) {
|
||||
deferred.resolveWith(null, [servers]);
|
||||
return deferred.promise();
|
||||
}
|
||||
|
||||
if (!chrome) {
|
||||
deferred.resolveWith(null, [servers]);
|
||||
return deferred.promise();
|
||||
}
|
||||
var isTimedOut = false;
|
||||
var timeout;
|
||||
var socketId;
|
||||
|
||||
var isTimedOut = false;
|
||||
var socketId;
|
||||
function startTimer() {
|
||||
|
||||
var timeout = setTimeout(function () {
|
||||
timeout = setTimeout(function () {
|
||||
|
||||
isTimedOut = true;
|
||||
deferred.resolveWith(null, [servers]);
|
||||
|
@ -43,22 +44,22 @@
|
|||
if (socketId) {
|
||||
chrome.sockets.udp.onReceive.removeListener(onReceive);
|
||||
chrome.sockets.udp.close(socketId);
|
||||
|
||||
|
||||
}
|
||||
|
||||
}, timeoutMs);
|
||||
}
|
||||
|
||||
function onReceive(info) {
|
||||
function onReceive(info) {
|
||||
|
||||
console.log('ServerDiscovery message received');
|
||||
console.log('ServerDiscovery message received');
|
||||
|
||||
console.log(info);
|
||||
console.log(info);
|
||||
|
||||
if (info.socketId == socketId) {
|
||||
if (info.socketId == socketId) {
|
||||
|
||||
try {
|
||||
var json = arrayBufferToString(info.data);
|
||||
|
||||
console.log('Server discovery json: ' + json);
|
||||
var server = JSON.parse(json);
|
||||
|
||||
server.RemoteAddress = info.remoteAddress;
|
||||
|
@ -68,37 +69,61 @@
|
|||
}
|
||||
|
||||
servers.push(server);
|
||||
} catch (err) {
|
||||
console.log('Error receiving server info: ' + err);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var port = 7359;
|
||||
chrome.sockets.udp.create(function (createInfo) {
|
||||
var port = 7359;
|
||||
console.log('chrome.sockets.udp.create');
|
||||
chrome.sockets.udp.create(function (createInfo) {
|
||||
|
||||
socketId = createInfo.socketId;
|
||||
socketId = createInfo.socketId;
|
||||
|
||||
chrome.sockets.udp.bind(createInfo.socketId, '0.0.0.0', port, function (result) {
|
||||
console.log('chrome.sockets.udp.bind');
|
||||
|
||||
var data = stringToArrayBuffer('who is EmbyServer?');
|
||||
chrome.sockets.udp.bind(createInfo.socketId, '0.0.0.0', port, function (result) {
|
||||
|
||||
chrome.sockets.udp.send(createInfo.socketId, data, '255.255.255.255', port, function (result) {
|
||||
if (result < 0) {
|
||||
console.log('send fail: ' + result);
|
||||
chrome.sockets.udp.close(createInfo.socketId);
|
||||
var data = stringToArrayBuffer('who is EmbyServer?');
|
||||
|
||||
if (!isTimedOut) {
|
||||
clearTimeout(timeout);
|
||||
deferred.resolveWith(null, [servers]);
|
||||
}
|
||||
console.log('chrome.sockets.udp.send');
|
||||
chrome.sockets.udp.send(createInfo.socketId, data, '255.255.255.255', port, function (result) {
|
||||
|
||||
} else {
|
||||
if (result < 0) {
|
||||
console.log('send fail: ' + result);
|
||||
deferred.resolveWith(null, [servers]);
|
||||
chrome.sockets.udp.close(createInfo.socketId);
|
||||
|
||||
console.log('sendTo: success ' + port);
|
||||
} else {
|
||||
|
||||
if (!isTimedOut) {
|
||||
chrome.sockets.udp.onReceive.addListener(onReceive);
|
||||
}
|
||||
}
|
||||
});
|
||||
console.log('sendTo: success ' + port);
|
||||
|
||||
startTimer();
|
||||
chrome.sockets.udp.onReceive.addListener(onReceive);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
return deferred.promise();
|
||||
}
|
||||
|
||||
globalScope.ServerDiscovery = {
|
||||
|
||||
findServers: function (timeoutMs) {
|
||||
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
|
||||
deviceReadyPromise.done(function () {
|
||||
|
||||
findServersInternal(timeoutMs).done(function (result) {
|
||||
|
||||
deferred.resolveWith(null, [result]);
|
||||
|
||||
}).fail(function () {
|
||||
|
||||
deferred.reject();
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -106,4 +131,14 @@
|
|||
}
|
||||
};
|
||||
|
||||
var deviceReadyDeferred = DeferredBuilder.Deferred();
|
||||
var deviceReadyPromise = deviceReadyDeferred.promise();
|
||||
|
||||
document.addEventListener("deviceready", function () {
|
||||
|
||||
deviceReadyDeferred.resolve();
|
||||
|
||||
}, false);
|
||||
|
||||
|
||||
})(window);
|
Loading…
Add table
Add a link
Reference in a new issue