Files
zoff/server/public/assets/js/embed.js
Kasper Rynning-Tønnesen e320dca191 Updated embedded version
2017-06-15 18:56:14 +02:00

160 lines
3.6 KiB
JavaScript
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var song_title = "";
var paused = false;
var player_ready = false;
var list_html = $("#list-song-html").html();
var w_p = true;
var lazy_load = false;
var embed = true;
var vol = 100;
var adminpass = "";
var mobile_beginning = false;
var durationBegun = false;
var chromecastAvailable = false;
var private_channel = false;
var offline = false;
var began = false;
var from_frontpage = false;
var seekTo;
var socket;
var video_id;
var previous_video_id;
var hash = window.location.hash.substring(1).split("&");
var chan = hash[0];
var autoplay = false;
var color = "#808080";
var dragging = false;
var user_auth_started = false;
var user_auth_avoid = false;
var connection_options = {
'sync disconnect on unload':true,
'secure': true,
'force new connection': true
};
var Crypt = {
crypt_pass: function(pass) {
return pass;
}
};
function receiveMessage(event)
{
if(event.data == "parent") {
//console.log(event);
window.parentWindow = event.source;
window.parentOrigin = event.origin;
}
if(event.data == "lower") {
window.setVolume(10);
}else if(event.data == "reset") {
window.setVolume(100);
} else if(event.data == "get_info") {
window.parentWindow.postMessage({type: "np", title: Player.player.getVideoData().title}, window.parentOrigin);
window.parentWindow.postMessage({type: "controller", id: Hostcontroller.old_id}, window.parentOrigin);
if(full_playlist.length > 0) {
Player.sendNext({title: full_playlist[0].title, videoId: full_playlist[0].id});
}
}
}
window.addEventListener("message", receiveMessage, false);
$(document).ready(function(){
if(hash.length >= 3 && hash[2] == "autoplay"){
autoplay = true;
}else{
paused = true;
}
if(hash.indexOf("videoonly") > -1) {
$("#playlist").addClass("hide");
$("#controls").addClass("hide");
$("#player").addClass("video_only");
}
$("#locked_channel").modal({
dismissible: false
});
color = "#" + hash[1];
add = "https://zoff.me";
socket = io.connect(''+add+':8080', connection_options);
socket.on('auth_required', function() {
$("#locked_channel").modal('open');
});
socket.on("get_list", function(){
setTimeout(function(){socket.emit('list', {channel: chan.toLowerCase(), pass: ''});},1000);
});
socket.on("viewers", function(view)
{
viewers = view;
if(song_title !== undefined)
Player.getTitle(song_title, viewers);
});
setup_host_initialization();
setup_youtube_listener();
setup_list_listener();
window.onYouTubeIframeAPIReady = Player.onYouTubeIframeAPIReady;
Player.loadPlayer();
Playercontrols.initSlider();
window.setVolume = setVolume;
$("#controls").css("background-color", color);
$("#playlist").css("background-color", color);
if(hash.indexOf("controll") > -1) {
Hostcontroller.change_enabled(true);
} else {
Hostcontroller.change_enabled(false);
}
});
function setup_host_listener(id){
socket.on(id, Hostcontroller.host_on_action);
}
function setup_host_initialization(){
socket.on("id", Hostcontroller.host_listener);
}
function setup_youtube_listener(){
socket.on("np", Player.youtube_listener);
}
function setup_list_listener(){
socket.on("channel", List.channel_function);
}
function setVolume(val) {
$("#volume").slider('value', val);
Playercontrols.setVolume(val);
}
$(document).on( "click", "#zoffbutton", function(e){
window.open("https://zoff.me/" + chan.toLowerCase() + "/", '_blank');
});
$(document).on( "click", ".vote-container", function(e){
var id = $(this).attr("data-video-id");
List.vote(id, "pos");
});
$(document).on("click", ".prev_page", function(e){
e.preventDefault();
List.dynamicContentPage(-1);
});
$(document).on("click", ".next_page", function(e){
e.preventDefault();
List.dynamicContentPage(1);
});