mirror of
https://github.com/KevinMidboe/zoff.git
synced 2025-10-29 18:00:23 +00:00
Added fixes for player not starting on youtubevideos that has already been played by the client
Fix for userpass not being set correctly Fix for emit function not being used everywhere it needs to be used
This commit is contained in:
@@ -143,6 +143,7 @@ var Admin = {
|
||||
},
|
||||
|
||||
pw: function(msg) {
|
||||
if(msg == false) return;
|
||||
w_p = false;
|
||||
if(adminpass == undefined || adminpass == "") {
|
||||
adminpass = Crypt.get_pass(chan.toLowerCase());
|
||||
@@ -354,8 +355,9 @@ var Admin = {
|
||||
userpass: Crypt.crypt_pass(pass_send),
|
||||
userpass_changed: userpass_changed
|
||||
};
|
||||
|
||||
Crypt.set_userpass(chan.toLowerCase(), CryptoJS.SHA256(userpass).toString());
|
||||
if(userpass_changed){
|
||||
Crypt.set_userpass(chan.toLowerCase(), CryptoJS.SHA256(userpass).toString());
|
||||
}
|
||||
emit("conf", configs);
|
||||
},
|
||||
|
||||
|
||||
@@ -74,6 +74,8 @@ var chromecastReady = false;
|
||||
var find_word = "";
|
||||
var found_array = [];
|
||||
var found_array_index = 0;
|
||||
var startTime = 0;
|
||||
var fix_too_far = false;
|
||||
var guid = "";
|
||||
var castSession;
|
||||
var width_timeout;
|
||||
@@ -141,9 +143,9 @@ window.zoff = {
|
||||
}
|
||||
|
||||
if(!Helper.mobilecheck()) {
|
||||
$(window).error(function(e){
|
||||
e.preventDefault();
|
||||
Helper.logs.unshift({log: e.originalEvent.error.stack.toString().replace(/(\r\n|\n|\r)/gm,""), date: new Date()});
|
||||
window.onerror = function(e) {
|
||||
if(e == "Script error.") return true;
|
||||
Helper.logs.unshift({log: e.toString().replace(/(\r\n|\n|\r)/gm,""), date: new Date()});
|
||||
$(".contact-form-content").remove();
|
||||
$("#submit-contact-form").remove();
|
||||
$(".contact-modal-header").text("An error occurred");
|
||||
@@ -159,8 +161,9 @@ if(!Helper.mobilecheck()) {
|
||||
$("#contact").modal("open");
|
||||
/*$("#error-report-modal").modal();*/
|
||||
$("#error-report-code").text(JSON.stringify(Helper.logs, undefined, 4));
|
||||
console.error(e.originalEvent.error);
|
||||
});
|
||||
//console.error(e.originalEvent.error);
|
||||
return true;
|
||||
};
|
||||
}
|
||||
|
||||
$().ready(function(){
|
||||
|
||||
@@ -11,6 +11,7 @@ var Player = {
|
||||
youtube_listener: function(obj) {
|
||||
Helper.log(["object", obj]);
|
||||
var state;
|
||||
fix_too_far = false;
|
||||
if(embed && obj.np) {
|
||||
if(window.parentWindow && window.parentOrigin) {
|
||||
window.parentWindow.postMessage({type: "np", title: obj.np[0].title}, window.parentOrigin);
|
||||
@@ -89,6 +90,7 @@ var Player = {
|
||||
conf = obj.conf[0];
|
||||
time = obj.time;
|
||||
seekTo = (time - conf.startTime) + Player.np.start;
|
||||
startTime = time - conf.startTime;
|
||||
song_title = obj.np[0].title;
|
||||
duration = obj.np[0].duration;
|
||||
//Player.setBGimage(video_id);
|
||||
@@ -116,6 +118,7 @@ var Player = {
|
||||
conf = obj.conf[0];
|
||||
time = obj.time;
|
||||
seekTo = (time - conf.startTime) + Player.np.start;
|
||||
startTime = time - conf.startTime;
|
||||
song_title = obj.np[0].title;
|
||||
duration = obj.np[0].duration;
|
||||
|
||||
@@ -210,10 +213,15 @@ var Player = {
|
||||
"New state\nState: ",
|
||||
newState
|
||||
]);
|
||||
try{
|
||||
if(player.getCurrentTime() > startTime + Player.np.start && !fix_too_far) {
|
||||
Player.seekTo(seekTo);
|
||||
Player.playVideo();
|
||||
fix_too_far = true;
|
||||
}
|
||||
try {
|
||||
Helper.log(["Duration: " + Player.player.getDuration(), "Current time: " + Player.player.getCurrentTime()]);
|
||||
Helper.log(["getVideoUrl(): " + Player.player.getVideoUrl().split('v=')[1]]);
|
||||
}catch(e){}
|
||||
} catch(e){}
|
||||
Helper.log(["video_id variable: " + video_id]);
|
||||
switch(newState.data) {
|
||||
case YT.PlayerState.UNSTARTED:
|
||||
@@ -221,6 +229,7 @@ var Player = {
|
||||
case YT.PlayerState.ENDED:
|
||||
playing = false;
|
||||
paused = false;
|
||||
|
||||
if(!offline) {
|
||||
socket.emit("end", {id: video_id, channel: chan.toLowerCase(), pass: embed ? '' : Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
|
||||
} else {
|
||||
@@ -482,7 +491,7 @@ var Player = {
|
||||
if(!user_auth_started) {
|
||||
if(newState.data == 5 || newState.data == 100 || newState.data == 101 || newState.data == 150) {
|
||||
curr_playing = Player.player.getVideoUrl().replace("https://www.youtube.com/watch?v=", "");
|
||||
socket.emit("skip", {error: newState.data, id: video_id, pass: adminpass == "" ? "" : Crypt.crypt_pass(adminpass), channel: chan.toLowerCase(), userpass: embed ? '' : Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
|
||||
emit("skip", {error: newState.data, id: video_id, pass: adminpass == "" ? "" : Crypt.crypt_pass(adminpass), channel: chan.toLowerCase(), userpass: embed ? '' : Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
|
||||
|
||||
} else if(video_id !== undefined) {
|
||||
Player.loadVideoById(video_id, duration);
|
||||
@@ -573,7 +582,7 @@ var Player = {
|
||||
notifyUser: function(id, title) {
|
||||
title = title.replace(/\\\'/g, "'").replace(/"/g,"'").replace(/&/g,"&");
|
||||
if (Notification.permission === "granted" && document.hidden && !embed) {
|
||||
var notification = new Notification("Now Playing", {body: title, icon: "https://i.ytimg.com/vi/"+id+"/mqdefault.jpg", iconUrl: "http://i.ytimg.com/vi/"+id+"/mqdefault.jpg"});
|
||||
var notification = new Notification("Now Playing", {body: title, icon: "https://img.youtube.com/vi/"+id+"/mqdefault.jpg", iconUrl: "http://img.youtube.com/vi/"+id+"/mqdefault.jpg"});
|
||||
notification.onclick = function(x) { window.focus(); this.cancel(); };
|
||||
setTimeout(function(){
|
||||
notification.close();
|
||||
|
||||
Reference in New Issue
Block a user