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

update live tv media sources

This commit is contained in:
Luke Pulverenti 2015-05-18 12:40:20 -04:00
parent 4b6692c92d
commit 9336922f29
9 changed files with 440 additions and 11 deletions

View file

@ -229,8 +229,6 @@
$(this).trigger('connect');
MediaController.setActivePlayer(PlayerName);
this.sendMessage({
options: {},
command: 'Identify'
@ -548,6 +546,8 @@
$(castPlayer).on("connect", function (e) {
MediaController.setActivePlayer(PlayerName, self.getCurrentTargetInfo());
console.log('cc: connect');
// Reset this so the next query doesn't make it appear like content is playing.
self.lastPlayerData = {};
@ -837,6 +837,13 @@
console.log(JSON.stringify(data));
return data;
};
self.tryPair = function (target) {
var deferred = $.Deferred();
deferred.resolve();
return deferred.promise();
};
}
function initializeChromecast() {

View file

@ -532,7 +532,7 @@
html += '<div style="padding:1em 1em;background:rgba(20,20,20,1);margin:0;text-align:center;" class="detailsMenuHeader">';
html += '<button type="button" class="imageButton detailsMenuLeftButton" data-role="none"><i class="fa fa-arrow-left"></i></button>';
html += '<h3 style="font-weight:400;margin:.5em 0;line-height:.5;"></h3>';
html += '<h3 style="font-weight:400;margin:.5em 0;"></h3>';
html += '<button type="button" class="imageButton detailsMenuRightButton" data-role="none"><i class="fa fa-arrow-right"></i></button>';
html += '</div>';

View file

@ -118,15 +118,42 @@
}
currentPlayer = player;
currentTargetInfo = targetInfo || player.getCurrentTargetInfo();
currentTargetInfo = targetInfo;
console.log('Active player: ' + JSON.stringify(currentTargetInfo));
$(self).trigger('playerchange');
};
self.trySetActivePlayer = function (player, targetInfo) {
if (typeof (player) === 'string') {
player = players.filter(function (p) {
return p.name == player;
})[0];
}
if (!player) {
throw new Error('null player');
}
player.tryPair(targetInfo).done(function() {
currentPlayer = player;
currentTargetInfo = targetInfo;
console.log('Active player: ' + JSON.stringify(currentTargetInfo));
$(self).trigger('playerchange');
});
};
self.setDefaultPlayerActive = function () {
self.setActivePlayer(self.getDefaultPlayer());
var player = self.getDefaultPlayer();
var target = player.getTargets()[0];
self.setActivePlayer(player, target);
};
self.removeActivePlayer = function (name) {
@ -597,7 +624,7 @@
var playableMediaTypes = this.getAttribute('data-mediatypes').split(',');
var supportedCommands = this.getAttribute('data-commands').split(',');
MediaController.setActivePlayer(playerName, {
MediaController.trySetActivePlayer(playerName, {
id: targetId,
name: targetName,
playableMediaTypes: playableMediaTypes,

View file

@ -1731,15 +1731,18 @@
var getItemFields = "MediaSources,Chapters";
self.getCurrentTargetInfo = function () {
return self.getTargets()[0];
self.tryPair = function (target) {
var deferred = $.Deferred();
deferred.resolve();
return deferred.promise();
};
}
window.MediaPlayer = new mediaPlayer();
window.MediaController.registerPlayer(window.MediaPlayer);
window.MediaController.setActivePlayer(window.MediaPlayer);
window.MediaController.setActivePlayer(window.MediaPlayer, window.MediaPlayer.getTargets()[0]);
})(document, setTimeout, clearTimeout, screen, window.store, $, setInterval, window);

View file

@ -276,6 +276,13 @@
return deferred.promise();
};
self.tryPair = function(target) {
var deferred = $.Deferred();
deferred.resolve();
return deferred.promise();
};
}
var player = new remoteControlPlayer();

View file

@ -1813,7 +1813,7 @@ var AppInfo = {};
});
if (Dashboard.isRunningInCordova()) {
requirejs(['thirdparty/cordova/chromecast']);
requirejs(['thirdparty/cordova/connectsdk']);
} else {
if ($.browser.chrome) {
requirejs(['scripts/chromecast']);