Merge pull request #302 from zoff-music/fix/pause-change

Fixed issue with player start playing when paused
This commit is contained in:
Kasper Rynning-Tønnesen
2018-02-09 11:12:23 +01:00
committed by GitHub
2 changed files with 40 additions and 25 deletions

View File

@@ -10,6 +10,7 @@ var conf = [];
var private_channel = false;
var end_programmatically = false;
var music = 0;
var was_stopped = false;
var timed_remove_check;
var slider_type = "horizontal";
var programscroll = false;

View File

@@ -134,38 +134,51 @@ var Player = {
if(player_ready && !window.MSStream) {
try {
var compared;
var prev_state = state;
try {
compared = Player.player.getVideoUrl().split('v=')[1] != video_id && state != 2;
compared = Player.player.getVideoUrl().split('v=')[1] != video_id;
} catch(e) {
compared = true;
}
if(compared || chromecastAvailable){
Player.loadVideoById(video_id, duration);
if(!Helper.mobilecheck()) {
Player.notifyUser(video_id, song_title);
}
Player.seekTo(seekTo);
if(paused && !chromecastAvailable){
Player.pauseVideo();
}
}
if(!paused){
if(!mobile_beginning || chromecastAvailable) {
Player.playVideo();
}
if(prev_state == 2 && !chromecastAvailable) {
console.log("pausing");
Player.stopVideo();
was_stopped = true;
if(!durationBegun) {
Player.durationSetter();
}
}
if(Player.player.getDuration() > seekTo || Player.player.getDuration() === 0 || chromecastAvailable || Player.player.getCurrentTime() != seekTo) {
Player.seekTo(seekTo);
}
Player.after_load = video_id;
} else {
if(compared || chromecastAvailable){
if(!Player.loaded) {
setTimeout(function(){Player.loaded = true;},500);
Player.loadVideoById(video_id, duration);
if(!Helper.mobilecheck()) {
Player.notifyUser(video_id, song_title);
}
Player.seekTo(seekTo);
if(paused && !chromecastAvailable){
Player.pauseVideo();
}
}
if(!paused){
if((!mobile_beginning || chromecastAvailable) && prev_state != 2) {
console.log("playing");
Player.playVideo();
}
if(!durationBegun) {
Player.durationSetter();
}
}
console.log(prev_state, chromecastAvailable);
if(Player.player.getDuration() > seekTo || Player.player.getDuration() === 0 || chromecastAvailable || Player.player.getCurrentTime() != seekTo) {
Player.seekTo(seekTo);
}
Player.after_load = video_id;
if(!Player.loaded) {
setTimeout(function(){Player.loaded = true;},500);
}
}
}catch(e) {
if(chromecastAvailable) {
@@ -241,9 +254,10 @@ var Player = {
if(document.getElementById("pause").className.split(" ").length == 2)
$("#pause").toggleClass("hide");
}
if(paused && !offline) {
if((paused && !offline) || was_stopped) {
socket.emit('pos', {channel: chan.toLowerCase(), pass: embed ? '' : Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
paused = false;
was_stopped = false;
}
break;
case YT.PlayerState.PAUSED: