1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

update promises

This commit is contained in:
Luke Pulverenti 2015-12-30 15:25:17 -05:00
parent 5b326b4322
commit 462025d3db
9 changed files with 164 additions and 179 deletions

View file

@ -167,32 +167,31 @@
self.getPlayerState = function () {
var deferred = $.Deferred();
return new Promise(function (resolve, reject) {
var apiClient = window.ApiClient;
var apiClient = window.ApiClient;
if (apiClient) {
apiClient.getSessions().then(function (sessions) {
if (apiClient) {
apiClient.getSessions().then(function (sessions) {
var currentTargetId = MediaController.getPlayerInfo().id;
var currentTargetId = MediaController.getPlayerInfo().id;
// Update existing data
//updateSessionInfo(popup, msg.Data);
var session = sessions.filter(function (s) {
return s.Id == currentTargetId;
})[0];
// Update existing data
//updateSessionInfo(popup, msg.Data);
var session = sessions.filter(function (s) {
return s.Id == currentTargetId;
})[0];
if (session) {
session = getPlayerState(session);
}
if (session) {
session = getPlayerState(session);
}
deferred.resolveWith(null, [session]);
});
} else {
deferred.resolveWith(null, [{}]);
}
return deferred.promise();
resolve(session);
});
} else {
resolve({});
}
});
};
var pollInterval;
@ -263,53 +262,53 @@
self.getTargets = function () {
var deferred = $.Deferred();
return new Promise(function (resolve, reject) {
var sessionQuery = {
ControllableByUserId: Dashboard.getCurrentUserId()
};
var sessionQuery = {
ControllableByUserId: Dashboard.getCurrentUserId()
};
var apiClient = window.ApiClient;
var apiClient = window.ApiClient;
if (apiClient) {
apiClient.getSessions(sessionQuery).then(function (sessions) {
if (apiClient) {
apiClient.getSessions(sessionQuery).then(function (sessions) {
var targets = sessions.filter(function (s) {
var targets = sessions.filter(function (s) {
return s.DeviceId != apiClient.deviceId();
return s.DeviceId != apiClient.deviceId();
}).map(function (s) {
return {
name: s.DeviceName,
deviceName: s.DeviceName,
id: s.Id,
playerName: self.name,
appName: s.Client,
playableMediaTypes: s.PlayableMediaTypes,
isLocalPlayer: false,
supportedCommands: s.SupportedCommands
};
}).map(function (s) {
return {
name: s.DeviceName,
deviceName: s.DeviceName,
id: s.Id,
playerName: self.name,
appName: s.Client,
playableMediaTypes: s.PlayableMediaTypes,
isLocalPlayer: false,
supportedCommands: s.SupportedCommands
};
});
resolve(targets);
}, function () {
reject();
});
deferred.resolveWith(null, [targets]);
}, function () {
deferred.reject();
});
} else {
deferred.resolveWith(null, []);
}
return deferred.promise();
} else {
resolve([]);
}
});
};
self.tryPair = function(target) {
var deferred = $.Deferred();
deferred.resolve();
return deferred.promise();
return new Promise(function (resolve, reject) {
resolve();
});
};
}