Added localmode for embedded players, configurable on embed-code create

This commit is contained in:
Kasper Rynning-Tønnesen
2018-08-30 12:26:59 +02:00
parent 752472547e
commit a7f25ab4a5
11 changed files with 752 additions and 291 deletions

View File

@@ -364,61 +364,6 @@ var Channel = {
}
},
seekToClick: function(e){
var acceptable = ["bar", "controls", "duration"];
if(acceptable.indexOf(e.target.getAttribute("id")) >= 0) {
if(full_playlist == undefined) return;
var total = full_playlist[full_playlist.length - 1].duration / document.getElementById("controls").offsetWidth;
total = total * e.clientX;
if(!chromecastAvailable){
if(videoSource == "youtube") Player.player.seekTo(total + Player.np.start);
else if(videoSource == "soundcloud") Player.soundcloud_player.seek((total + Player.np.start) * 1000);
dMinutes = Math.floor(duration / 60);
dSeconds = duration - dMinutes * 60;
currDurr = total;
if(currDurr - Player.np.start > duration) {
currDurr = duration - Player.np.start;
}
currDurr = currDurr - Player.np.start;
minutes = Math.floor(currDurr / 60);
seconds = currDurr - (minutes * 60);
document.getElementById("duration").innerHTML = Helper.pad(minutes)+":"+Helper.pad(seconds)+" <span id='dash'>/</span> "+Helper.pad(dMinutes)+":"+Helper.pad(dSeconds);
per = (100 / duration) * currDurr;
if(per >= 100)
per = 100;
else if(duration === 0)
per = 0;
document.getElementById("bar").style.width = per + "%"
} else {
castSession.sendMessage("urn:x-cast:zoff.me", {type: "seekTo", seekTo: total});
}
}
},
seekToMove: function(e){
var pos_x = event.clientX - Math.ceil(document.getElementById("seekToDuration").offsetWidth / 2);
if(pos_x < 0) pos_x = 0;
else if(pos_x + document.getElementById("seekToDuration").offsetWidth > document.getElementById("controls").offsetWidth) {
pos_x = document.getElementById("controls").offsetWidth - document.getElementById("seekToDuration").offsetWidth;
}
Helper.css("#seekToDuration", "left", pos_x + "px");
try{
var total = full_playlist[full_playlist.length - 1].duration / document.getElementById("controls").offsetWidth;
total = total * event.clientX;
var _time = Helper.secondsToOther(total);
var _minutes = Helper.pad(_time[0]);
var _seconds = Helper.pad(Math.ceil(_time[1]));
Helper.setHtml("#seekToDuration", _minutes + ":" + _seconds);
var acceptable = ["bar", "controls", "duration"];
if(acceptable.indexOf(event.target.getAttribute("id")) >= 0 && dragging) {
document.getElementById("bar").style.width(((100 / duration) * total) + "%");
}
} catch(e){}
},
set_title_width: function(start){
if(window.innerWidth > 600){
var add_width = document.getElementsByClassName("brand-logo")[0].offsetWidth

View File

@@ -5,6 +5,7 @@ var song_title = "";
var paused = false;
var client = false;
var startTime = 0;
var full_playlist;
var hostMode = false;
var soundcloud_enabled = true;
var socket_connected = false;
@@ -12,6 +13,8 @@ var dynamicListeners = {};
var player_ready = false;
var previousSoundcloud;
var buffering = false;
var prev_chan_list = "";
var local_new_channel = false;
var empty_clear = false;
var fix_too_far = false;
var beginning = false;
@@ -76,12 +79,12 @@ window.addEventListener("message", receiveMessage, false);
window.addEventListener("DOMContentLoaded", function() {
});
window.addEventListener("load", function() {
if(hash.length >= 2 && hash.indexOf("autoplay") > 0){
autoplay = true;
Helper.css("#player", "visibility", "hidden");
} else {
//paused = true;
}
if(hash.length >= 2 && hash.indexOf("autoplay") > 0){
autoplay = true;
Helper.css("#player", "visibility", "hidden");
} else {
//paused = true;
}
if(hash.indexOf("videoonly") > -1) {
Helper.addClass("#wrapper", "hide");
Helper.addClass("#controls", "hide");
@@ -89,6 +92,7 @@ window.addEventListener("load", function() {
Helper.addClass("#player_overlay", "video_only");
Helper.css("#zoffbutton", "bottom", "0px");
}
M.Modal.init(document.getElementById("locked_channel"), {
dismissible: false
});
@@ -98,6 +102,10 @@ window.addEventListener("load", function() {
//add = "localhost";
socket = io.connect(''+add+':8080', connection_options);
if(hash.indexOf("localmode") > 1) {
change_offline(true, false);
}
socket.on('auth_required', function() {
M.Modal.getInstance(document.getElementById("locked_channel")).open();
});
@@ -125,7 +133,7 @@ window.addEventListener("load", function() {
setup_list_listener();
if(autoplay) {
startWaitTimerPlay();
startWaitTimerPlay();
}
window.onYouTubeIframeAPIReady = Player.onYouTubeIframeAPIReady;
@@ -147,13 +155,13 @@ window.addEventListener("load", function() {
function resizePlaylistPlaying(){};
function startWaitTimerPlay() {
setTimeout(function() {
if(videoSource == "youtube") {
Player.player.playVideo();
} else if(videoSource == "soundcloud"){
Player.soundcloud_player.play();
}
}, 5000);
setTimeout(function() {
if(videoSource == "youtube") {
Player.player.playVideo();
} else if(videoSource == "soundcloud"){
Player.soundcloud_player.play();
}
}, 5000);
}
function setup_host_listener(id) {
@@ -183,78 +191,78 @@ function loadChromecastVideo(){}
function toast(msg) {
switch(msg) {
case "suggested_thumbnail":
if(embed) return;
msg = "The thumbnail has been suggested!";
break;
if(embed) return;
msg = "The thumbnail has been suggested!";
break;
case "faulty_start_end":
if(embed) return;
break;
if(embed) return;
break;
case "wait_longer":
if(embed) return;
break;
if(embed) return;
break;
case "suggested_description":
if(embed) return;
break;
if(embed) return;
break;
case "thumbnail_denied":
if(embed) return;
break;
if(embed) return;
break;
case "description_denied":
if(embed) return;
break;
if(embed) return;
break;
case "addedsong":
if(embed) return;
break;
if(embed) return;
break;
case "addedplaylist":
if(embed) return;
break;
if(embed) return;
break;
case "savedsettings":
if(embed) return;
break;
if(embed) return;
break;
case "wrongpass":
if(embed) return;
break;
if(embed) return;
break;
case "deleted_songs":
if(embed) return;
break;
if(embed) return;
break;
case "shuffled":
if(embed) return;
break;
if(embed) return;
break;
case "deletesong":
if(embed) return;
break;
if(embed) return;
break;
case "voted":
msg=Helper.rnd(["You voted!", "You vote like a boss", "Voting is the key to democracy", "May you get your song to the very top!", "I love that song! I vouch for you.", "Only you vote that good", "I like the way you vote...", "Up the video goes!", "Voted Zoff for president", "Only 999 more to go!"]);
break;
msg=Helper.rnd(["You voted!", "You vote like a boss", "Voting is the key to democracy", "May you get your song to the very top!", "I love that song! I vouch for you.", "Only you vote that good", "I like the way you vote...", "Up the video goes!", "Voted Zoff for president", "Only 999 more to go!"]);
break;
case "alreadyvoted":
msg=Helper.rnd(["You can't vote twice on that song!", "I see you have voted on that song before", "One vote per person!", "I know you want to hear your song, but have patience!", "I'm sorry, but I can't let you vote twice, Dave."]);
break;
msg=Helper.rnd(["You can't vote twice on that song!", "I see you have voted on that song before", "One vote per person!", "I know you want to hear your song, but have patience!", "I'm sorry, but I can't let you vote twice, Dave."]);
break;
case "skip":
if(embed) return;
break;
if(embed) return;
break;
case "listhaspass":
if(embed) return;
break;
if(embed) return;
break;
case "noskip":
if(embed) return;
break;
if(embed) return;
break;
case "alreadyskip":
if(embed) return;
break;
if(embed) return;
break;
case "notyetskip":
if(embed) return;
break;
if(embed) return;
break;
case "correctpass":
if(embed) return;
break;
if(embed) return;
break;
case "changedpass":
if(embed) return;
break;
if(embed) return;
break;
case "suggested":
if(embed) return;
break;
if(embed) return;
break;
case "alreadyplay":
if(embed) return;
break;
if(embed) return;
break;
}
before_toast();
M.toast({html: msg, displayLength: 4000});
@@ -274,38 +282,121 @@ function emit() {
}
}
function change_offline(enabled, already_offline){
if(client) {
offline = false;
return;
}
offline = enabled;
socket.emit("offline", {status: enabled, channel: chan != undefined ? chan.toLowerCase() : ""});
if(!Helper.mobilecheck()) {
if(document.querySelectorAll("#offline-mode").length == 1 && M.Tooltip.getInstance(document.getElementById("offline-mode"))) {
Helper.tooltip("#offline-mode", 'destroy');
}
}
function handleEvent(e, target, tried, type) {
for(var y = 0; y < e.path.length; y++) {
var target = e.path[y];
if(dynamicListeners[type] && dynamicListeners[type]["#" + target.id]) {
dynamicListeners[type]["#" + target.id].call(target);
return;
} else {
if(target.classList == undefined) return;
for(var i = 0; i < target.classList.length; i++) {
if(dynamicListeners[type] && dynamicListeners[type]["." + target.classList[i]]) {
dynamicListeners[type]["." + target.classList[i]].call(target);
return;
}
var mouseEnter = function(e){
Helper.removeClass("#seekToDuration", "hide");
};
var mouseLeave = function(e){
dragging = false;
Helper.addClass("#seekToDuration", "hide");
};
var mouseDown = function(e) {
var acceptable = ["bar", "controls", "duration"];
if(acceptable.indexOf(e.target.id) >= 0) {
dragging = true;
}
};
var mouseUp = function(e) {
dragging = false;
};
if(enabled){
Helper.addClass("#viewers", "hide");
Helper.removeClass(".margin-playbar", "margin-playbar");
Helper.addClass(".prev playbar", "margin-playbar");
Helper.removeClass(".prev playbar", "hide");
Helper.removeClass(".skip playbar", "hide");
Helper.removeClass("#offline-mode", "waves-cyan");
Helper.addClass("#offline-mode", "cyan");
Helper.removeClass(".delete-context-menu", "context-menu-disabled");
if(!Helper.mobilecheck()) {
Helper.tooltip("#offline-mode", {
delay: 5,
position: "bottom",
html: "Disable local mode"
});
}
if(window.location.pathname != "/"){
socket.removeEventListener("color");
document.getElementById("controls").addEventListener("mouseenter", mouseEnter, false);
document.getElementById("controls").addEventListener("mouseleave", mouseLeave, false);
document.getElementById("controls").addEventListener("mousedown", mouseDown, false);
document.getElementById("controls").addEventListener("mouseup", mouseUp, false);
document.getElementById("controls").addEventListener("mousemove", seekToMove);
document.getElementById("controls").addEventListener("click", seekToClick);
document.querySelector("#main_components").insertAdjacentHTML("beforeend", "<div id='seekToDuration' class='hide'>00:00/01:00</div>");
var controlElement = document.querySelector("#controls");
Helper.css("#seekToDuration", "bottom", "50px");
Helper.addClass("#controls", "ewresize");
}
if(full_playlist != undefined && !already_offline){
for(var x = 0; x < full_playlist.length; x++){
full_playlist[x].votes = 0;
}
List.sortList();
List.populate_list(full_playlist);
}
} else {
if(!Admin.logged_in) Helper.addClass(".delete-context-menu", "context-menu-disabled");
Helper.removeClass(".margin-playbar", "margin-playbar");
Helper.addClass("#playpause", "margin-playbar");
Helper.removeClass("#viewers", "hide");
Helper.addClass(".prev playbar", "hide");
Helper.addClass(".skip playbar", "hide");
Helper.addClass("#offline-mode", "waves-cyan");
Helper.removeClass("#offline-mode", "cyan");
if(!Helper.mobilecheck()) {
Helper.tooltip("#offline-mode", {
delay: 5,
position: "bottom",
html: "Enable local mode"
});
}
if(window.location.pathname != "/"){
document.getElementById("controls").removeEventListener("mouseenter", mouseEnter, false);
document.getElementById("controls").removeEventListener("mouseleave", mouseLeave, false);
document.getElementById("controls").removeEventListener("mousedown", mouseDown, false);
document.getElementById("controls").removeEventListener("mouseup", mouseUp, false);
document.getElementById("controls").removeEventListener("mousemove", seekToMove);
document.getElementById("controls").removeEventListener("click", seekToClick);
Helper.removeElement("#seekToDuration");
socket.on("color", Player.setBGimage);
socket.emit("pos", {channel: chan.toLowerCase()});
var add = "";
//if(private_channel) add = Crypt.getCookie("_uI") + "_";
socket.emit("list", {version: parseInt(localStorage.getItem("VERSION")), channel: add + chan.toLowerCase()});
Helper.removeClass("#controls", "ewresize");
}
}
}
function addListener(type, element, callback) {
if(dynamicListeners[type] == undefined) dynamicListeners[type] = {};
dynamicListeners[type][element] = callback;
}
function before_toast(){
/*if($('.toast').length > 0) {
var toastElement = $('.toast').first()[0];
var toastInstance = toastElement.M_Toast;
toastInstance.remove();
}*/
M.Toast.dismissAll();
//Materialize.Toast.removeAll();
var toastElement = $('.toast').first()[0];
var toastInstance = toastElement.M_Toast;
toastInstance.remove();
}*/
M.Toast.dismissAll();
//Materialize.Toast.removeAll();
}
document.addEventListener("click", function(e) {
@@ -318,7 +409,8 @@ addListener("click", "#zoffbutton", function(e) {
});
addListener("click", ".vote-container", function(e) {
var id = this.getAttribute("data-video-id");
var that = e;
var id = that.getAttribute("data-video-id");
List.vote(id, "pos");
});
@@ -336,6 +428,18 @@ addListener("click", ".next_page", function(e) {
List.dynamicContentPage(1);
});
addListener("click", ".prev", function(event){
this.preventDefault();
if(!offline) return;
List.skip(false);
});
addListener("click", ".skip", function(event){
this.preventDefault();
if(!offline) return;
List.skip(true);
});
addListener("click", ".last_page", function(e){
event.preventDefault();
List.dynamicContentPage(10);

View File

@@ -23,7 +23,7 @@ function removeAllListeners() {
function resizeFunction() {
if(chan && !Helper.mobilecheck()){
if(document.querySelector("#wrapper") == null) return;
if(document.querySelector("#wrapper") == null) return;
if(!client && !embed) document.querySelector("#hide-playlist").style.left = (document.querySelector("#video-container").offsetWidth - document.querySelector("#hide-playlist").offsetWidth) + "px";
if(window.innerWidth > 600 && document.querySelector("#wrapper").style.height != "") {
document.querySelector("#wrapper").style.height = "";
@@ -753,10 +753,10 @@ function disable_debug(){
localStorage.debug = false;
}
function embed_code(autoplay, width, height, color, embed_code){
function embed_code(autoplay, width, height, color, embed_code, embed_local){
var autoplay_add = "";
if(autoplay == "&autoplay") autoplay_add = 'allow="autoplay"';
return '<iframe src="https://zoff.me/_embed#' + chan.toLowerCase() + '&' + color + autoplay + embed_videoonly + '" width="' + width + 'px" height="' + height + 'px" ' + autoplay_add + '></iframe>';
return '<iframe src="https://zoff.me/_embed#' + chan.toLowerCase() + '&' + color + autoplay + embed_videoonly + embed_local + '" width="' + width + 'px" height="' + height + 'px" ' + autoplay_add + '></iframe>';
}
function change_offline(enabled, already_offline){
@@ -795,88 +795,129 @@ function change_offline(enabled, already_offline){
};
if(enabled){
/*if(list_html == undefined){
var tempOuter = document.createElement("div");
list_html.innerHTML = list_html;
//list_html.find(".list-remove").removeClass("hide");
list_html = list_html.innerHTML;
}*/
//$(".list-remove").removeClass("hide");
Helper.addClass("#viewers", "hide");
Helper.removeClass(".margin-playbar", "margin-playbar");
Helper.addClass(".prev playbar", "margin-playbar");
Helper.removeClass(".prev playbar", "hide");
Helper.removeClass("#offline-mode", "waves-cyan");
Helper.addClass("#offline-mode", "cyan");
Helper.removeClass(".delete-context-menu", "context-menu-disabled");
if(!Helper.mobilecheck()) {
Helper.tooltip("#offline-mode", {
delay: 5,
position: "bottom",
html: "Disable local mode"
});
}
if(window.location.pathname != "/"){
socket.removeEventListener("color");
document.getElementById("controls").addEventListener("mouseenter", mouseEnter, false);
document.getElementById("controls").addEventListener("mouseleave", mouseLeave, false);
document.getElementById("controls").addEventListener("mousedown", mouseDown, false);
document.getElementById("controls").addEventListener("mouseup", mouseUp, false);
document.getElementById("controls").addEventListener("mousemove", Channel.seekToMove);
document.getElementById("controls").addEventListener("click", Channel.seekToClick);
document.querySelector("#main_components").insertAdjacentHTML("beforeend", "<div id='seekToDuration' class='hide'>00:00/01:00</div>");
var controlElement = document.querySelector("#controls");
if(!Helper.mobilecheck()) Helper.css("#seekToDuration", "top", -controlElement.offsetHeight - 25 + "px");
else if(Helper.mobilecheck()) Helper.css("#seekToDuration", "top", -controlElement.offsetHeight - 25 + "px");
Helper.addClass("#controls", "ewresize");
}
if(full_playlist != undefined && !already_offline){
for(var x = 0; x < full_playlist.length; x++){
full_playlist[x].votes = 0;
Helper.addClass("#viewers", "hide");
Helper.removeClass(".margin-playbar", "margin-playbar");
Helper.addClass(".prev playbar", "margin-playbar");
Helper.removeClass(".prev playbar", "hide");
Helper.removeClass("#offline-mode", "waves-cyan");
Helper.addClass("#offline-mode", "cyan");
Helper.removeClass(".delete-context-menu", "context-menu-disabled");
if(!Helper.mobilecheck()) {
Helper.tooltip("#offline-mode", {
delay: 5,
position: "bottom",
html: "Disable local mode"
});
}
if(window.location.pathname != "/"){
socket.removeEventListener("color");
document.getElementById("controls").addEventListener("mouseenter", mouseEnter, false);
document.getElementById("controls").addEventListener("mouseleave", mouseLeave, false);
document.getElementById("controls").addEventListener("mousedown", mouseDown, false);
document.getElementById("controls").addEventListener("mouseup", mouseUp, false);
document.getElementById("controls").addEventListener("mousemove", seekToMove);
document.getElementById("controls").addEventListener("click", seekToClick);
document.querySelector("#main_components").insertAdjacentHTML("beforeend", "<div id='seekToDuration' class='hide'>00:00/01:00</div>");
var controlElement = document.querySelector("#controls");
if(!Helper.mobilecheck()) Helper.css("#seekToDuration", "top", -controlElement.offsetHeight - 25 + "px");
else if(Helper.mobilecheck()) Helper.css("#seekToDuration", "top", -controlElement.offsetHeight - 25 + "px");
Helper.addClass("#controls", "ewresize");
}
if(full_playlist != undefined && !already_offline){
for(var x = 0; x < full_playlist.length; x++){
full_playlist[x].votes = 0;
}
List.sortList();
List.populate_list(full_playlist);
}
} else {
if(!Admin.logged_in) Helper.addClass(".delete-context-menu", "context-menu-disabled");
Helper.removeClass(".margin-playbar", "margin-playbar");
Helper.addClass("#playpause", "margin-playbar");
Helper.removeClass("#viewers", "hide");
Helper.addClass(".prev playbar", "hide");
Helper.addClass("#offline-mode", "waves-cyan");
Helper.removeClass("#offline-mode", "cyan");
if(!Helper.mobilecheck()) {
Helper.tooltip("#offline-mode", {
delay: 5,
position: "bottom",
html: "Enable local mode"
});
}
if(window.location.pathname != "/"){
document.getElementById("controls").removeEventListener("mouseenter", mouseEnter, false);
document.getElementById("controls").removeEventListener("mouseleave", mouseLeave, false);
document.getElementById("controls").removeEventListener("mousedown", mouseDown, false);
document.getElementById("controls").removeEventListener("mouseup", mouseUp, false);
document.getElementById("controls").removeEventListener("mousemove", seekToMove);
document.getElementById("controls").removeEventListener("click", seekToClick);
Helper.removeElement("#seekToDuration");
socket.on("color", Player.setBGimage);
socket.emit("pos", {channel: chan.toLowerCase()});
var add = "";
socket.emit("list", {version: parseInt(localStorage.getItem("VERSION")), channel: add + chan.toLowerCase()});
Helper.removeClass("#controls", "ewresize");
}
List.sortList();
List.populate_list(full_playlist);
}
} else {
/*if(list_html == undefined){
var tempOuter = document.createElement("div");
list_html.innerHTML = list_html;
//list_html.find(".list-remove").removeClass("hide");
list_html = list_html.innerHTML;
}*/
if(!Admin.logged_in) Helper.addClass(".delete-context-menu", "context-menu-disabled");
Helper.removeClass(".margin-playbar", "margin-playbar");
Helper.addClass("#playpause", "margin-playbar");
Helper.removeClass("#viewers", "hide");
Helper.addClass(".prev playbar", "hide");
Helper.addClass("#offline-mode", "waves-cyan");
Helper.removeClass("#offline-mode", "cyan");
if(!Helper.mobilecheck()) {
Helper.tooltip("#offline-mode", {
delay: 5,
position: "bottom",
html: "Enable local mode"
});
}
if(window.location.pathname != "/"){
document.getElementById("controls").removeEventListener("mouseenter", mouseEnter, false);
document.getElementById("controls").removeEventListener("mouseleave", mouseLeave, false);
document.getElementById("controls").removeEventListener("mousedown", mouseDown, false);
document.getElementById("controls").removeEventListener("mouseup", mouseUp, false);
document.getElementById("controls").removeEventListener("mousemove", Channel.seekToMove);
document.getElementById("controls").removeEventListener("click", Channel.seekToClick);
Helper.removeElement("#seekToDuration");
socket.on("color", Player.setBGimage);
socket.emit("pos", {channel: chan.toLowerCase()});
var add = "";
//if(private_channel) add = Crypt.getCookie("_uI") + "_";
socket.emit("list", {version: parseInt(localStorage.getItem("VERSION")), channel: add + chan.toLowerCase()});
Helper.removeClass("#controls", "ewresize");
}
function seekToClick(e){
var acceptable = ["bar", "controls", "duration"];
if(acceptable.indexOf(e.target.getAttribute("id")) >= 0) {
if(full_playlist == undefined) return;
var total = full_playlist[full_playlist.length - 1].duration / document.getElementById("controls").offsetWidth;
total = total * e.clientX;
if(!chromecastAvailable){
if(videoSource == "youtube") Player.player.seekTo(total + Player.np.start);
else if(videoSource == "soundcloud") Player.soundcloud_player.seek((total + Player.np.start) * 1000);
dMinutes = Math.floor(duration / 60);
dSeconds = duration - dMinutes * 60;
currDurr = total;
if(currDurr - Player.np.start > duration) {
currDurr = duration - Player.np.start;
}
currDurr = currDurr - Player.np.start;
minutes = Math.floor(currDurr / 60);
seconds = currDurr - (minutes * 60);
document.getElementById("duration").innerHTML = Helper.pad(minutes)+":"+Helper.pad(seconds)+" <span id='dash'>/</span> "+Helper.pad(dMinutes)+":"+Helper.pad(dSeconds);
per = (100 / duration) * currDurr;
if(per >= 100)
per = 100;
else if(duration === 0)
per = 0;
document.getElementById("bar").style.width = per + "%"
} else {
castSession.sendMessage("urn:x-cast:zoff.me", {type: "seekTo", seekTo: total});
}
}
}
function seekToMove(e){
var pos_x = event.clientX - Math.ceil(document.getElementById("seekToDuration").offsetWidth / 2);
if(pos_x < 0) pos_x = 0;
else if(pos_x + document.getElementById("seekToDuration").offsetWidth > document.getElementById("controls").offsetWidth) {
pos_x = document.getElementById("controls").offsetWidth - document.getElementById("seekToDuration").offsetWidth;
}
Helper.css("#seekToDuration", "left", pos_x + "px");
try{
var total = full_playlist[full_playlist.length - 1].duration / document.getElementById("controls").offsetWidth;
total = total * event.clientX;
var _time = Helper.secondsToOther(total);
var _minutes = Helper.pad(_time[0]);
var _seconds = Helper.pad(Math.ceil(_time[1]));
Helper.setHtml("#seekToDuration", _minutes + ":" + _seconds);
var acceptable = ["bar", "controls", "duration"];
if(acceptable.indexOf(event.target.getAttribute("id")) >= 0 && dragging) {
document.getElementById("bar").style.width(((100 / duration) * total) + "%");
}
} catch(e){}
}
function resizePlaylistPlaying(playing) {

View File

@@ -76,6 +76,7 @@ var not_export_html = "";
var embed_height = 300;
var embed_width = 600;
var embed_videoonly = "";
var embed_localmode = "";
var embed_autoplay = "&autoplay";
var connect_error = false;
var access_token_data_youtube = {};
@@ -840,13 +841,13 @@ document.addEventListener("submit", function(event) {
addListener("change", "#width_embed", function(event) {
var that = this.target;
embed_width = that.value;
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly);
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly, embed_localmode);
});
addListener("change", "#height_embed", function(event) {
var that = this.target;
embed_height = that.value;
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly);
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly, embed_localmode);
});
addListener("click", ".prev_page", function(event) {
@@ -994,7 +995,7 @@ addListener("change", '#view_channels_select', function(event) {
addListener("input", '#color_embed', function(e){
var that = e;
color = that.value.substring(1);
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly);
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly, embed_localmode);
});
addListener("click", ".chan-link", function(e){
@@ -1172,13 +1173,19 @@ addListener("submit", "#listImportSpotify", function(event){
addListener("change", "#autoplay", function(e) {
if(e.checked) embed_autoplay = "&autoplay";
else embed_autoplay = "";
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly);
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly, embed_localmode);
});
addListener("change", "#videoonly", function(e) {
if(e.checked) embed_videoonly = "&videoonly";
else embed_videoonly = "";
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly);
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly, embed_localmode);
});
addListener("change", "#localmode", function(e) {
if(e.checked) embed_localmode = "&localmode";
else embed_localmode = "";
document.getElementById("embed-area").value = embed_code(embed_autoplay, embed_width, embed_height, color, embed_videoonly, embed_localmode);
});
addListener("click", "#playbutton_remote", function(event) {

View File

@@ -426,7 +426,7 @@ var Player = {
}
}
}
if(offline) {
if(offline && !embed) {
var url = 'https://img.youtube.com/vi/'+id+'/mqdefault.jpg';
if(videoSource == "soundcloud") url = Player.np.thumbnail;
getColor(url);