").parent().html());
- $(".page-footer").removeClass("padding-bottom-extra");
- $(".page-footer").removeClass("padding-bottom-novideo");
- $("#favicon").attr("href", "/assets/images/favicon.png");
+ $(".drag-target").remove();
+ $("#sidenav-overlay").remove();
+ $("main").attr("class", "center-align container");
+ $("#main-container").removeClass("channelpage");
+ $("#main-container").attr("style", "");
+ $("header").html($(response.find("header")).html());
+ $($(response.find(".section.mega"))).insertAfter("header");
+ $($(response.find(".section.mobile-search"))).insertAfter(".mega");
+ if(Helper.mobilecheck() || user_auth_avoid) $("main").html($(response.find("main")).html());
+ else $("main").append($(response.find("#main_section_frontpage")).wrap("
").parent().html());
+ $(".page-footer").removeClass("padding-bottom-extra");
+ $(".page-footer").removeClass("padding-bottom-novideo");
+ $("#favicon").attr("href", "/assets/images/favicon.png");
- $(".context-menu-list").remove();
- Helper.log(socket);
- if($("#alreadyfp").length == 1){
- initfp();
- }else {
- fromChannel = true;
- frontpage = true;
- initfp();
- }
+ $(".context-menu-list").remove();
+ Helper.log(socket);
+ if($("#alreadyfp").length == 1){
+ initfp();
+ }else {
+ fromChannel = true;
+ frontpage = true;
+ initfp();
+ }
- if($("#alreadychannel").length === 0 && !user_auth_avoid){
- $("head").append("
0) {
- Player.sendNext({title: full_playlist[0].title, videoId: full_playlist[0].id});
- }
- }
- }
- try{
- state = Player.player.getPlayerState();
- }catch(e){
- state = null;
- }
- if((((!offline && (state != null || from_frontpage)) || (offline && (!(state != null) || from_frontpage))|| (!offline && (!(state != null) || from_frontpage)) || (offline && state == -1)) && !(offline && prev_chan_player == chan)) || (offline && video_id == undefined)){
- prev_chan_player = chan;
- from_frontpage = false;
- Player.loaded = false;
- Helper.log("--------youtube_listener--------");
- Helper.log("Received: ");
- Helper.log(obj);
- Helper.log("paused variable: " + paused);
- Helper.log("mobile_beginning variable: " + mobile_beginning);
- try{
- Helper.log("getVideoUrl(): " + Player.player.getVideoUrl().split('v=')[1]);
- } catch(e){}
- Helper.log("video_id variable: " + video_id);
- Helper.log("---------------------------------");
+ youtube_listener: function(obj) {
+ var state;
+ if(embed && obj.np) {
+ if(window.parentWindow && window.parentOrigin) {
+ window.parentWindow.postMessage({type: "np", title: obj.np[0].title}, window.parentOrigin);
+ if(full_playlist.length > 0) {
+ Player.sendNext({title: full_playlist[0].title, videoId: full_playlist[0].id});
+ }
+ }
+ }
+ try {
+ state = Player.player.getPlayerState();
+ } catch(e) {
+ state = null;
+ }
+ if((((!offline && (state != null || from_frontpage)) || (offline && (!(state != null) || from_frontpage))|| (!offline && (!(state != null) || from_frontpage)) || (offline && state == -1)) && !(offline && prev_chan_player == chan)) || (offline && video_id == undefined)){
+ prev_chan_player = chan;
+ from_frontpage = false;
+ Player.loaded = false;
+ Helper.log("--------youtube_listener--------");
+ Helper.log("Received: ");
+ Helper.log(obj);
+ Helper.log("paused variable: " + paused);
+ Helper.log("mobile_beginning variable: " + mobile_beginning);
+ try{
+ Helper.log("getVideoUrl(): " + Player.player.getVideoUrl().split('v=')[1]);
+ } catch(e){}
+ Helper.log("video_id variable: " + video_id);
+ Helper.log("---------------------------------");
- if(!obj.np){
+ if(!obj.np){
+ document.getElementById('song-title').innerHTML = "Empty channel. Add some songs!";
+ document.title = "Zoff - the shared YouTube based radio";
+ $("#channel-load").css("display", "none");
+ //$("#player_overlay").height($("#player").height());
- document.getElementById('song-title').innerHTML = "Empty channel. Add some songs!";
- document.title = "Zoff - the shared YouTube based radio";
- $("#channel-load").css("display", "none");
- //$("#player_overlay").height($("#player").height());
+ if(!window.MSStream && !chromecastAvailable) {
+ if($("#player_overlay").hasClass("hide")) {
+ $("#player_overlay").removeClass("hide");
+ }
+ }
+ try{
+ if(!chromecastAvailable) {
+ Player.stopVideo();
+ }
+ }catch(e){}
+ //List.importOldList(channel.toLowerCase());
+ } else if(paused){
+ Player.getTitle(obj.np[0].title, viewers);
+ //Player.setBGimage(video_id);
+ if(!Helper.mobilecheck()) {
+ Player.notifyUser(obj.np[0].id, obj.np[0].title);
+ }
+ if(!chromecastAvailable) {
+ Player.stopVideo();
+ }
+ video_id = obj.np[0].id;
+ conf = obj.conf[0];
+ time = obj.time;
+ seekTo = time - conf.startTime;
+ song_title = obj.np[0].title;
+ duration = obj.np[0].duration;
+ Player.setBGimage(video_id);
+ } else if(!paused){
+ //Helper.log("gotten new song");
+ if(previous_video_id === undefined) {
+ previous_video_id = obj.np[0].id;
+ } else if(previous_video_id != video_id) {
+ previous_video_id = video_id;
+ }
- if(!window.MSStream && !chromecastAvailable) {
- if($("#player_overlay").hasClass("hide")) {
- $("#player_overlay").removeClass("hide");
- }
- }
- try{
- if(!chromecastAvailable) {
- Player.stopVideo();
- }
- }catch(e){}
- //List.importOldList(channel.toLowerCase());
- } else if(paused){
- Player.getTitle(obj.np[0].title, viewers);
- //Player.setBGimage(video_id);
- if(!Helper.mobilecheck()) {
- Player.notifyUser(obj.np[0].id, obj.np[0].title);
- }
- if(!chromecastAvailable) {
- Player.stopVideo();
- }
- video_id = obj.np[0].id;
- conf = obj.conf[0];
- time = obj.time;
- seekTo = time - conf.startTime;
- song_title = obj.np[0].title;
- duration = obj.np[0].duration;
- Player.setBGimage(video_id);
- }else if(!paused){
- //Helper.log("gotten new song");
- if(previous_video_id === undefined) {
- previous_video_id = obj.np[0].id;
- } else if(previous_video_id != video_id) {
- previous_video_id = video_id;
- }
+ video_id = obj.np[0].id;
+ conf = obj.conf[0];
+ time = obj.time;
+ seekTo = time - conf.startTime;
+ song_title = obj.np[0].title;
+ duration = obj.np[0].duration;
- video_id = obj.np[0].id;
- conf = obj.conf[0];
- time = obj.time;
- seekTo = time - conf.startTime;
- song_title = obj.np[0].title;
- duration = obj.np[0].duration;
+ if(mobile_beginning && Helper.mobilecheck() && seekTo === 0 && !chromecastAvailable) {
+ seekTo = 1;
+ }
- if(mobile_beginning && Helper.mobilecheck() && seekTo === 0 && !chromecastAvailable) {
- seekTo = 1;
- }
+ try{
+ if(full_playlist[0].id == video_id && !mobile_beginning){
+ List.song_change(full_playlist[0].added);
+ }
+ Suggestions.fetchYoutubeSuggests(video_id);
+ }catch(e){}
- try{
- if(full_playlist[0].id == video_id && !mobile_beginning){
- List.song_change(full_playlist[0].added);
- }
- Suggestions.fetchYoutubeSuggests(video_id);
- }catch(e){}
+ Player.getTitle(song_title, viewers);
+ Player.setBGimage(video_id);
+ //if(player_ready && !Helper.mobilecheck())
+ if(player_ready && !window.MSStream) {
+ try {
+ var compared;
+ try {
+ compared = Player.player.getVideoUrl().split('v=')[1] != video_id;
+ } catch(e) {
+ compared = true;
+ }
+ if(compared || chromecastAvailable){
- Player.getTitle(song_title, viewers);
- Player.setBGimage(video_id);
- //if(player_ready && !Helper.mobilecheck())
- if(player_ready && !window.MSStream) {
- try {
- var compared;
- try {
- 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(!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;
- 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(!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;
+ if(!Player.loaded) {
+ setTimeout(function(){Player.loaded = true;},500);
+ }
+ }catch(e) {
+ if(chromecastAvailable) {
+ Player.loadVideoById(video_id, duration);
+ Player.seekTo(seekTo);
+ }
+ if(!durationBegun && !chromecastAvailable) {
+ Player.durationSetter();
+ }
+ }
+ } else {
+ Player.getTitle(song_title, viewers);
+ }
+ }
+ } else {
+ if(!durationBegun) {
+ Player.durationSetter();
+ }
+ duration = Player.player.getDuration();
+ }
+ },
- if(!Player.loaded) {
- setTimeout(function(){Player.loaded = true;},500);
- }
- }catch(e) {
- if(chromecastAvailable) {
- Player.loadVideoById(video_id, duration);
- Player.seekTo(seekTo);
- }
- if(!durationBegun && !chromecastAvailable) {
- Player.durationSetter();
- }
- }
- } else {
- Player.getTitle(song_title, viewers);
- }
- }
- } else {
- if(!durationBegun) {
- Player.durationSetter();
- }
- duration = Player.player.getDuration();
- }
- },
+ onPlayerStateChange: function(newState) {
+ Helper.log("-------onPlayerStateChange------");
+ Helper.log("New state\nState: ");
+ Helper.log(newState);
+ try{
+ Helper.log("Duration: " + Player.player.getDuration(), "Current time: " + Player.player.getCurrentTime());
+ Helper.log("getVideoUrl(): " + Player.player.getVideoUrl().split('v=')[1]);
+ }catch(e){}
+ Helper.log("video_id variable: " + video_id);
+ Helper.log("---------------------------------");
+ switch(newState.data) {
+ case YT.PlayerState.UNSTARTED:
+ break;
+ 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 {
+ Player.playNext();
+ }
+ break;
+ case YT.PlayerState.PLAYING:
+ if(!window.MSStream) {
+ $("#player").css("opacity", "1");
+ if(!Helper.mobilecheck()) $("#channel-load").css("display", "none");
+ }
+ playing = true;
+ if(beginning && Helper.mobilecheck() && !chromecastAvailable){
+ //Player.pauseVideo();
+ beginning = false;
+ mobile_beginning = false;
- onPlayerStateChange: function(newState) {
- Helper.log("-------onPlayerStateChange------");
- Helper.log("New state\nState: ");
- Helper.log(newState);
- try{
- Helper.log("Duration: " + Player.player.getDuration(), "Current time: " + Player.player.getCurrentTime());
- Helper.log("getVideoUrl(): " + Player.player.getVideoUrl().split('v=')[1]);
- }catch(e){}
- Helper.log("video_id variable: " + video_id);
- Helper.log("---------------------------------");
- switch(newState.data)
- {
- case YT.PlayerState.UNSTARTED:
- break;
- 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 {
- Player.playNext();
- }
- break;
- case YT.PlayerState.PLAYING:
- if(!window.MSStream) {
- $("#player").css("opacity", "1");
- if(!Helper.mobilecheck()) $("#channel-load").css("display", "none");
- }
- playing = true;
- if(beginning && Helper.mobilecheck() && !chromecastAvailable){
- //Player.pauseVideo();
- beginning = false;
- mobile_beginning = false;
+ }
+ if(!embed && window.location.pathname != "/" && !chromecastAvailable) Helper.addClass("#player_overlay", "hide");
+ if(window.location.pathname != "/"){
+ if(document.getElementById("play").className.split(" ").length == 1)
+ $("#play").toggleClass("hide");
+ if(document.getElementById("pause").className.split(" ").length == 2)
+ $("#pause").toggleClass("hide");
+ }
+ if(paused && !offline) {
+ socket.emit('pos', {channel: chan.toLowerCase(), pass: embed ? '' : Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
+ paused = false;
+ }
+ break;
+ case YT.PlayerState.PAUSED:
+ if(!chromecastAvailable){
+ if(beginning && mobile_beginning) {
+ $("#playpause").css("visibility", "visible");
+ $("#playpause").css("pointer-events", "all");
+ $("#channel-load").css("display", "none");
+ }
+ paused = true;
+ if(window.location.pathname != "/") Playercontrols.play_pause_show();
+ mobile_beginning = true;
+ }
+ break;
+ case YT.PlayerState.BUFFERING:
+ break;
+ }
+ },
- }
- if(!embed && window.location.pathname != "/" && !chromecastAvailable) Helper.addClass("#player_overlay", "hide");
- if(window.location.pathname != "/"){
- if(document.getElementById("play").className.split(" ").length == 1)
- $("#play").toggleClass("hide");
- if(document.getElementById("pause").className.split(" ").length == 2)
- $("#pause").toggleClass("hide");
- }
- if(paused && !offline) {
- socket.emit('pos', {channel: chan.toLowerCase(), pass: embed ? '' : Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
- paused = false;
- }
- break;
- case YT.PlayerState.PAUSED:
- if(!chromecastAvailable){
- if(beginning && mobile_beginning) {
- $("#playpause").css("visibility", "visible");
- $("#playpause").css("pointer-events", "all");
- $("#channel-load").css("display", "none");
- }
- paused = true;
- if(window.location.pathname != "/") Playercontrols.play_pause_show();
- mobile_beginning = true;
- }
- break;
- case YT.PlayerState.BUFFERING:
- break;
- }
- },
+ playVideo: function(){
+ if(chromecastAvailable){
+ castSession.sendMessage("urn:x-cast:zoff.me", {type: "playVideo"});
+ //socket.emit('pos', {channel: chan.toLowerCase()});
+ chrome.cast.media.GenericMediaMetadata({metadataType: "GENERIC", title:song_title, image: 'https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg'});
+ chrome.cast.Image('https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg');
+ if($("#pause").hasClass("hide")){
+ $("#play").toggleClass("hide");
+ $("#pause").toggleClass("hide");
+ }
+ //Playercontrols.play_pause();
+ } else {
+ Player.player.playVideo();
+ }
+ },
- playVideo: function(){
- if(chromecastAvailable){
- castSession.sendMessage("urn:x-cast:zoff.me", {type: "playVideo"});
- //socket.emit('pos', {channel: chan.toLowerCase()});
- chrome.cast.media.GenericMediaMetadata({metadataType: "GENERIC", title:song_title, image: 'https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg'});
- chrome.cast.Image('https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg');
- if($("#pause").hasClass("hide")){
- $("#play").toggleClass("hide");
- $("#pause").toggleClass("hide");
- }
- //Playercontrols.play_pause();
- } else {
- Player.player.playVideo();
- }
- },
+ pauseVideo: function(){
+ if(chromecastAvailable){
+ castSession.sendMessage("urn:x-cast:zoff.me", {type: "pauseVideo"});
+ if($("#play").hasClass("hide")){
+ $("#play").toggleClass("hide");
+ $("#pause").toggleClass("hide");
+ }
+ //Playercontrols.play_pause();
+ } else {
+ Player.player.pauseVideo();
+ }
+ },
- pauseVideo: function(){
- if(chromecastAvailable){
- castSession.sendMessage("urn:x-cast:zoff.me", {type: "pauseVideo"});
- if($("#play").hasClass("hide")){
- $("#play").toggleClass("hide");
- $("#pause").toggleClass("hide");
- }
- //Playercontrols.play_pause();
- } else {
- Player.player.pauseVideo();
- }
- },
+ seekTo: function(_seekTo){
+ if(chromecastAvailable){
+ castSession.sendMessage("urn:x-cast:zoff.me", {type: "seekTo", seekTo: _seekTo});
+ } else if(!offline){
+ Player.player.seekTo(_seekTo);
+ } else {
+ Player.player.seekTo(0);
+ }
+ },
- seekTo: function(_seekTo){
- if(chromecastAvailable){
- castSession.sendMessage("urn:x-cast:zoff.me", {type: "seekTo", seekTo: _seekTo});
- } else if(!offline){
- Player.player.seekTo(_seekTo);
- } else {
- Player.player.seekTo(0);
- }
- },
+ loadVideoById: function(id, this_duration){
+ if(chromecastAvailable){
+ castSession.sendMessage("urn:x-cast:zoff.me", {type: "loadVideo", videoId: id, channel: chan.toLowerCase()});
+ chrome.cast.media.GenericMediaMetadata({metadataType: "GENERIC", title:song_title, image: 'https://img.youtube.com/vi/'+id+'/mqdefault.jpg'});
+ chrome.cast.Image('https://img.youtube.com/vi/'+id+'/mqdefault.jpg');
+ } else {
+ Player.player.loadVideoById({'videoId': id, 'startSeconds': 0, 'endSeconds': this_duration});
+ }
+ },
- loadVideoById: function(id, this_duration){
- if(chromecastAvailable){
- castSession.sendMessage("urn:x-cast:zoff.me", {type: "loadVideo", videoId: id, channel: chan.toLowerCase()});
- chrome.cast.media.GenericMediaMetadata({metadataType: "GENERIC", title:song_title, image: 'https://img.youtube.com/vi/'+id+'/mqdefault.jpg'});
- chrome.cast.Image('https://img.youtube.com/vi/'+id+'/mqdefault.jpg');
- } else {
- Player.player.loadVideoById({'videoId': id, 'startSeconds': 0, 'endSeconds': this_duration});
- }
- },
+ stopVideo: function(){
+ if(chromecastAvailable){
+ castSession.sendMessage("urn:x-cast:zoff.me", {type: "stopVideo"});
+ } else {
+ try{
+ Player.player.stopVideo();
+ } catch(e){}
+ }
+ },
- stopVideo: function(){
- if(chromecastAvailable){
- castSession.sendMessage("urn:x-cast:zoff.me", {type: "stopVideo"});
- } else {
- try{
- Player.player.stopVideo();
- } catch(e){}
- }
- },
+ setVolume: function(vol){
+ if(chromecastAvailable){
+ castSession.setVolume(vol/100);
+ } else {
+ Player.player.setVolume(vol);
+ }
+ },
- setVolume: function(vol){
- if(chromecastAvailable){
- castSession.setVolume(vol/100);
- } else {
- Player.player.setVolume(vol);
- }
- },
+ playNext: function(){
+ var next_song = full_playlist[0];
+ video_id = next_song.id;
+ time = (new Date()).getTime();
+ song_title = next_song.title;
+ duration = next_song.duration;
+ Player.getTitle(song_title, viewers);
+ Player.setBGimage(video_id);
+ if(chromecastAvailable){
+ castSession.sendMessage("urn:x-cast:zoff.me", {type: "loadVideo", videoId: video_id, channel: chan.toLowerCase()});
+ chrome.cast.media.GenericMediaMetadata({metadataType: "GENERIC", title:song_title, image: 'https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg'});
+ chrome.cast.Image('https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg');
+ } else {
+ Player.loadVideoById(video_id, duration);
+ }
+ List.channel_function({type:"song_change", time: time});
+ },
- playNext: function(){
- var next_song = full_playlist[0];
- video_id = next_song.id;
- time = (new Date()).getTime();
- song_title = next_song.title;
- duration = next_song.duration;
- Player.getTitle(song_title, viewers);
- Player.setBGimage(video_id);
- if(chromecastAvailable){
- castSession.sendMessage("urn:x-cast:zoff.me", {type: "loadVideo", videoId: video_id, channel: chan.toLowerCase()});
- chrome.cast.media.GenericMediaMetadata({metadataType: "GENERIC", title:song_title, image: 'https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg'});
- chrome.cast.Image('https://img.youtube.com/vi/'+video_id+'/mqdefault.jpg');
- } else {
- Player.loadVideoById(video_id, duration);
- }
- List.channel_function({type:"song_change", time: time});
- },
+ sendNext: function(obj){
+ if(chromecastAvailable){
+ castSession.sendMessage("urn:x-cast:zoff.me", {type: "nextVideo", title: obj.title, videoId: obj.videoId});
+ }
- sendNext: function(obj){
- if(chromecastAvailable){
- castSession.sendMessage("urn:x-cast:zoff.me", {type: "nextVideo", title: obj.title, videoId: obj.videoId});
- }
+ if(embed) {
+ if(window.parentWindow && window.parentOrigin) {
+ window.parentWindow.postMessage({type: "nextVideo", title: obj.title}, window.parentOrigin);
+ }
+ }
+ },
- if(embed) {
- if(window.parentWindow && window.parentOrigin) {
- window.parentWindow.postMessage({type: "nextVideo", title: obj.title}, window.parentOrigin);
- }
- }
- },
+ getTitle: function(titt, v) {
+ var outPutWord = "
visibility"//v > 1 ? "viewers" : "viewer";
+ var title = decodeURIComponent(titt);
+ if(window.location.pathname != "/"){
+ var elem = document.getElementById('song-title');
+ var getTitleViews = document.getElementById('viewers');
- getTitle: function(titt, v)
- {
+ elem.innerHTML = title;
+ getTitleViews.innerHTML = outPutWord + " " + v;
+ elem.title = title;
+ if(chromecastAvailable){
+ $("#player_overlay").css("background", "url(https://img.youtube.com/vi/" + video_id + "/hqdefault.jpg)");
+ $("#player_overlay").css("background-position", "center");
+ $("#player_overlay").css("background-size", "100%");
+ $("#player_overlay").css("background-color", "black");
+ $("#player_overlay").css("background-repeat", "no-repeat");
+ //$("#player_overlay").css("height", "calc(100% - 32px)");
+ }
+ }
+ document.title = title + " • Zoff / "+chan;
- var outPutWord = "
visibility"//v > 1 ? "viewers" : "viewer";
- var title = decodeURIComponent(titt);
- if(window.location.pathname != "/"){
- var elem = document.getElementById('song-title');
- var getTitleViews = document.getElementById('viewers');
+ },
- elem.innerHTML = title;
- getTitleViews.innerHTML = outPutWord + " " + v;
- elem.title = title;
- if(chromecastAvailable){
- $("#player_overlay").css("background", "url(https://img.youtube.com/vi/" + video_id + "/hqdefault.jpg)");
- $("#player_overlay").css("background-position", "center");
- $("#player_overlay").css("background-size", "100%");
- $("#player_overlay").css("background-color", "black");
- $("#player_overlay").css("background-repeat", "no-repeat");
- //$("#player_overlay").css("height", "calc(100% - 32px)");
- }
- }
- document.title = title + " • Zoff / "+chan;
+ errorHandler: function(newState) {
+ 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()))});
- },
+ } else if(video_id !== undefined) {
+ Player.loadVideoById(video_id, duration);
+ }
+ }
+ },
- errorHandler: function(newState) {
- 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()))});
+ onPlayerReady: function(event) {
+ try{
+ beginning = true;
+ player_ready = true;
+ if(!window.MSStream) {
+ if(Helper.mobilecheck()){
+ $("#playpause").css("visibility", "hidden");
+ $("#playpause").css("pointer-events", "none");
+ $("#player").css("opacity", "1");
+ } else {
+ //$("#channel-load").css("display", "none");
+ }
+ /*$("#player").css("opacity", "1");*/
+ $(".video-container").removeClass("no-opacity");
+ $("#controls").css("opacity", "1");
+ $(".playlist").css("opacity", "1");
+ Player.loadVideoById(video_id, duration);
+ if(autoplay && (!Helper.mobilecheck() || chromecastAvailable)) {
+ Player.playVideo();
+ }
+ if(!durationBegun) {
+ Player.durationSetter();
+ }
+ if(embed){
+ setTimeout(function(){
+ Player.player.seekTo(seekTo);
+ if(!autoplay){
+ Player.player.pauseVideo();
+ Playercontrols.play_pause_show();
+ }
+ }, 1000);
+ }else
+ Player.seekTo(seekTo);
+ }
+ Player.readyLooks();
+ Playercontrols.initYoutubeControls(Player.player);
+ Playercontrols.initSlider();
+ Player.player.setVolume(Crypt.get_volume());
+ }catch(e){}
+ },
- } else if(video_id !== undefined) {
- Player.loadVideoById(video_id, duration);
- }
- }
- },
+ readyLooks: function() {
+ Player.setBGimage(video_id);
+ },
- onPlayerReady: function(event) {
- try{
- beginning = true;
- player_ready = true;
- if(!window.MSStream) {
- if(Helper.mobilecheck()){
- $("#playpause").css("visibility", "hidden");
- $("#playpause").css("pointer-events", "none");
- $("#player").css("opacity", "1");
- } else {
- //$("#channel-load").css("display", "none");
- }
- /*$("#player").css("opacity", "1");*/
- $(".video-container").removeClass("no-opacity");
- $("#controls").css("opacity", "1");
- $(".playlist").css("opacity", "1");
- Player.loadVideoById(video_id, duration);
- if(autoplay && (!Helper.mobilecheck() || chromecastAvailable)) {
- Player.playVideo();
- }
- if(!durationBegun) {
- Player.durationSetter();
- }
- if(embed){
- setTimeout(function(){
- Player.player.seekTo(seekTo);
- if(!autoplay){
- Player.player.pauseVideo();
- Playercontrols.play_pause_show();
- }
- }, 1000);
- }else
- Player.seekTo(seekTo);
- }
- Player.readyLooks();
- Playercontrols.initYoutubeControls(Player.player);
- Playercontrols.initSlider();
- Player.player.setVolume(Crypt.get_volume());
- }catch(e){}
- },
+ setBGimage: function(id){
+ if(id !== undefined && !embed)
+ {
+ var img = new Image();
+ img.onload = function ()
+ {
- readyLooks: function() {
- Player.setBGimage(video_id);
- },
+ var colorThief = new ColorThief();
+ var color = colorThief.getColor(img);
- setBGimage: function(id){
- if(id !== undefined && !embed)
- {
- var img = new Image();
- img.onload = function ()
- {
+ if(window.location.pathname != "/") {
+ document.getElementById("main-container").style.backgroundColor = Helper.rgbToHsl(color,true);
+ $("meta[name=theme-color]").attr("content", Helper.rgbToHex(color[0], color[1], color[2]));
+ }
+ };
- var colorThief = new ColorThief();
- var color = colorThief.getColor(img);
+ img.crossOrigin = 'Anonymous';
+ img.src = 'https://zoff.me:8081/https://img.youtube.com/vi/'+id+'/mqdefault.jpg';
+ }
+ },
- if(window.location.pathname != "/"){
- document.getElementById("main-container").style.backgroundColor = Helper.rgbToHsl(color,true);
- $("meta[name=theme-color]").attr("content", Helper.rgbToHex(color[0], color[1], color[2]));
- /*chromecast_icon_color = Helper.rgbToHsl(color,true).replace("hsl(", "").replace("%)", "").replace("%", "").replace(" ", "").replace(" ", "");
- console.log(chromecast_icon_color);
- chromecast_icon_color = chromecast_icon_color.split(",");
- console.log(chromecast_icon_color);
- chromecast_icon_color = Helper.hslToRgb(parseInt(chromecast_icon_color[0]), parseFloat(chromecast_icon_color[1]) / 100, parseFloat(chromecast_icon_color[2]) / 100);
- console.log(chromecast_icon_color);
- chromecast_icon_color = Helper.rgbToHex(parseInt(chromecast_icon_color[0]), parseInt(chromecast_icon_color[1]), parseInt(chromecast_icon_color[2]));
- console.log(chromecast_icon_color);
+ set_width: function(val){
+ $(".video-container").width(val);
+ if(!Helper.mobilecheck()) {
+ if($(window).width() > 769) {
+ var test_against_width = $(window).width() - $(".control-list").width() - $(".zbrand").outerWidth() - $(".brand-logo-navigate").outerWidth() - 66;
+ title_width = test_against_width;
+ $(".title-container").width(title_width);
+ } else {
+ $(".title-container").width("100%");
+ }
- $(".castButton").attr("style", "display:" + $(".castButton").css("display") + ";--disconnected-color" + chromecast_icon_color + ";");*/
- }
- };
+ }
+ },
- img.crossOrigin = 'Anonymous';
- img.src = 'https://zoff.me:8081/https://img.youtube.com/vi/'+id+'/mqdefault.jpg';
- }
- },
+ 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"});
+ notification.onclick = function(x) { window.focus(); this.cancel(); };
+ setTimeout(function(){
+ notification.close();
+ },5000);
+ }
+ },
- set_width: function(val){
- $(".video-container").width(val);
- if(!Helper.mobilecheck()) {
- if($(window).width() > 769) {
- var test_against_width = $(window).width() - $(".control-list").width() - $(".zbrand").outerWidth() - $(".brand-logo-navigate").outerWidth() - 66;
- title_width = test_against_width;
- $(".title-container").width(title_width);
- } else {
- $(".title-container").width("100%");
- }
+ setup_all_listeners: function() {
+ get_list_listener();
+ setup_youtube_listener();
+ setup_admin_listener();
+ setup_chat_listener();
+ setup_list_listener();
+ },
- }
- },
+ onYouTubeIframeAPIReady: function() {
+ Player.player = new YT.Player('player', {
+ videoId: video_id,
+ playerVars: { rel:"0", wmode:"transparent", controls: "0" , fs: "0", iv_load_policy: "3", theme:"light", color:"white", showinfo: 0},
+ events: {
+ 'onReady': Player.onPlayerReady,
+ 'onStateChange': Player.onPlayerStateChange,
+ 'onError': Player.errorHandler
+ }
+ });
+ },
- 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"});
- notification.onclick = function(x) { window.focus(); this.cancel(); };
- setTimeout(function(){
- notification.close();
- },5000);
- }
- },
+ createFireplacePlayer: function() {
+ Player.fireplace = new YT.Player('fireplace_player', {
+ videoId: "L_LUpnjgPso",
+ playerVars: { rel:"0", wmode:"transparent", controls: "0" , fs: "0", iv_load_policy: "3", theme:"light", color:"white", showinfo: 0},
+ events: {
+ 'onReady': Player.onFireplaceReady,
+ 'onStateChange': Player.onFireplaceChange
+ }
+ });
+ },
- setup_all_listeners: function()
- {
- get_list_listener();
- setup_youtube_listener();
- setup_admin_listener();
- setup_chat_listener();
- setup_list_listener();
- },
+ onFireplaceReady: function() {
+ Player.fireplace.playVideo();
+ },
- onYouTubeIframeAPIReady: function() {
- Player.player = new YT.Player('player', {
- videoId: video_id,
- playerVars: { rel:"0", wmode:"transparent", controls: "0" , fs: "0", iv_load_policy: "3", theme:"light", color:"white", showinfo: 0},
- events: {
- 'onReady': Player.onPlayerReady,
- 'onStateChange': Player.onPlayerStateChange,
- 'onError': Player.errorHandler
- }
- });
- },
+ onFireplaceChange: function(newState) {
+ switch(newState.data) {
+ case 0:
+ Player.fireplace.seekTo(0);
+ Player.fireplace.playVideo();
+ break;
+ case 2:
+ Player.fireplace.playVideo();
+ break;
+ }
+ },
- createFireplacePlayer: function() {
- Player.fireplace = new YT.Player('fireplace_player', {
- videoId: "L_LUpnjgPso",
- playerVars: { rel:"0", wmode:"transparent", controls: "0" , fs: "0", iv_load_policy: "3", theme:"light", color:"white", showinfo: 0},
- events: {
- 'onReady': Player.onFireplaceReady,
- 'onStateChange': Player.onFireplaceChange
- }
- });
- },
+ durationSetter: function() {
+ try{
+ if(!user_auth_avoid && duration !== undefined){
- onFireplaceReady: function() {
- Player.fireplace.playVideo();
- },
+ if(!Player.stopInterval) {
+ durationBegun = true;
+ }
+ dMinutes = Math.floor(duration / 60);
+ dSeconds = duration - dMinutes * 60;
+ currDurr = Player.player.getCurrentTime() !== undefined ? Math.floor(Player.player.getCurrentTime()) : seekTo;
+ if(currDurr > duration) {
+ currDurr = duration;
+ }
+ minutes = Math.floor(currDurr / 60);
+ seconds = currDurr - (minutes * 60);
+ document.getElementById("duration").innerHTML = Helper.pad(minutes)+":"+Helper.pad(seconds)+"
/ "+Helper.pad(dMinutes)+":"+Helper.pad(dSeconds);
+ per = (100 / duration) * currDurr;
+ if(per >= 100) {
+ per = 100;
+ } else if(duration === 0) {
+ per = 0;
+ }
- onFireplaceChange: function(newState) {
- switch(newState.data) {
- case 0:
- Player.fireplace.seekTo(0);
- Player.fireplace.playVideo();
- break;
- case 2:
- Player.fireplace.playVideo();
- break;
- }
- },
+ if(embed) {
+ if(window.parentWindow && window.parentOrigin) {
+ window.parentWindow.postMessage({type: "duration", duration: Player.player.getCurrentTime(), full_duration: Player.player.getDuration(), percent: per}, window.parentOrigin);
+ }
+ }
- durationSetter: function() {
- try{
- if(!user_auth_avoid && duration !== undefined){
+ if(!dragging) {
+ $("#bar").width(per+"%");
+ }
+ }
+ }catch(e){}
+ if(!Player.stopInterval) {
+ setTimeout(Player.durationSetter, 1000);
+ }
+ },
- if(!Player.stopInterval) {
- durationBegun = true;
- }
- dMinutes = Math.floor(duration / 60);
- dSeconds = duration - dMinutes * 60;
- currDurr = Player.player.getCurrentTime() !== undefined ? Math.floor(Player.player.getCurrentTime()) : seekTo;
- if(currDurr > duration) {
- currDurr = duration;
- }
- minutes = Math.floor(currDurr / 60);
- seconds = currDurr - (minutes * 60);
- document.getElementById("duration").innerHTML = Helper.pad(minutes)+":"+Helper.pad(seconds)+"
/ "+Helper.pad(dMinutes)+":"+Helper.pad(dSeconds);
- per = (100 / duration) * currDurr;
- if(per >= 100) {
- per = 100;
- } else if(duration === 0) {
- per = 0;
- }
-
- if(embed) {
- if(window.parentWindow && window.parentOrigin) {
- window.parentWindow.postMessage({type: "duration", duration: Player.player.getCurrentTime(), full_duration: Player.player.getDuration(), percent: per}, window.parentOrigin);
- }
- }
-
- if(!dragging) {
- $("#bar").width(per+"%");
- }
- }
- }catch(e){}
- if(!Player.stopInterval) {
- setTimeout(Player.durationSetter, 1000);
- }
- },
-
- loadPlayer: function() {
- if($("script[src='https://www.youtube.com/iframe_api']").length == 1){
- try{
- Player.onYouTubeIframeAPIReady();
- } catch(error){
- console.error("Seems YouTube iFrame script isn't correctly loaded. Please reload the page.");
- }
- } else {
- tag = document.createElement('script');
- tag.src = "https://www.youtube.com/iframe_api";
- firstScriptTag = document.getElementsByTagName('script')[0];
- firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
- }
- }
+ loadPlayer: function() {
+ if($("script[src='https://www.youtube.com/iframe_api']").length == 1){
+ try{
+ Player.onYouTubeIframeAPIReady();
+ } catch(error){
+ console.error("Seems YouTube iFrame script isn't correctly loaded. Please reload the page.");
+ }
+ } else {
+ tag = document.createElement('script');
+ tag.src = "https://www.youtube.com/iframe_api";
+ firstScriptTag = document.getElementsByTagName('script')[0];
+ firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
+ }
+ }
};
diff --git a/server/public/assets/js/playercontrols.js b/server/public/assets/js/playercontrols.js
index c1c12ef9..e23ead61 100755
--- a/server/public/assets/js/playercontrols.js
+++ b/server/public/assets/js/playercontrols.js
@@ -1,251 +1,225 @@
var Playercontrols = {
- stopInterval: false,
+ stopInterval: false,
- initYoutubeControls: function()
- {
- if(Helper.mobilecheck() && !window.MSStream){
- $("#controls").appendTo("#playbar");
- }
- Playercontrols.initControls();
- },
+ initYoutubeControls: function() {
+ if(Helper.mobilecheck() && !window.MSStream) {
+ $("#controls").appendTo("#playbar");
+ }
+ Playercontrols.initControls();
+ },
- initControls: function()
- {
- document.getElementById("volume-button").addEventListener("click", Playercontrols.mute_video);
- document.getElementById("playpause").addEventListener("click", Playercontrols.play_pause);
- document.getElementById("volume-button-overlay").addEventListener("click", Playercontrols.mute_video);
- document.getElementById("playpause-overlay").addEventListener("click", Playercontrols.play_pause);
- document.getElementById("fullscreen").addEventListener("click", Playercontrols.fullscreen);
+ initControls: function() {
+ $("#volume-button").on("click", Playercontrols.mute_video);
+ $("#playpause").on("click", Playercontrols.play_pause);
+ $("#volume-button-overlay").on("click", Playercontrols.mute_video);
+ $("#playpause-overlay").on("click", Playercontrols.play_pause);
+ $("#fullscreen").on("click", Playercontrols.fullscreen);
+ },
- },
+ initSlider: function() {
+ try {
+ vol = (Crypt.get_volume());
+ } catch(e){}
+ $("#volume").slider({
+ min: 0,
+ max: 100,
+ value: vol,
+ range: "min",
+ animate: true,
+ slide: function(event, ui) {
- initSlider: function()
- {
- try{
- vol = (Crypt.get_volume());
- }catch(e){}
- $("#volume").slider({
- min: 0,
- max: 100,
- value: vol,
- range: "min",
- animate: true,
- slide: function(event, ui) {
+ Playercontrols.setVolume(ui.value);
+ try{Crypt.set_volume(ui.value);}catch(e){}
+ }
+ });
+ Playercontrols.choose_button(vol, false);
+ },
- Playercontrols.setVolume(ui.value);
- //localStorage.setItem("volume", ui.value);
- try{Crypt.set_volume(ui.value);}catch(e){}
- }
- });
- Playercontrols.choose_button(vol, false);
- //$("#volume").slider("value", player.getVolume());
- },
+ fullscreen: function() {
+ var playerElement = $("#player");
+ var requestFullScreen = playerElement.requestFullScreen || playerElement.mozRequestFullScreen || playerElement.webkitRequestFullScreen;
+ if (requestFullScreen) {
+ requestFullScreen.bind(playerElement)();
+ }
+ },
- fullscreen: function()
- {
- var playerElement = document.getElementById("player");
- var requestFullScreen = playerElement.requestFullScreen || playerElement.mozRequestFullScreen || playerElement.webkitRequestFullScreen;
- if (requestFullScreen) {
- requestFullScreen.bind(playerElement)();
- }
- },
+ play_pause: function() {
+ if(!chromecastAvailable){
+ if(Player.player.getPlayerState() == YT.PlayerState.PLAYING)
+ {
+ Player.pauseVideo();
+ if(Helper.mobilecheck() && !window.MSStream){
+ //if(Helper.mobilecheck() && !/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream){
+ //document.getElementById("player").style.display = "none";
+ $("#player").css("display", "none");
+ $(".video-container").toggleClass("click-through");
+ $(".page-footer").toggleClass("padding-bottom-extra");
+ }
+ } else if(Player.player.getPlayerState() == YT.PlayerState.PAUSED || Player.player.getPlayerState() === YT.PlayerState.ENDED || (Player.player.getPlayerState() === YT.PlayerState.CUED)){
+ Player.playVideo();
+ //if(Helper.mobilecheck() && !/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream){
+ if(Helper.mobilecheck() && !window.MSStream){
+ //document.getElementById("player").style.display = "block";
+ $("#player").css("display", "block");
+ $(".video-container").toggleClass("click-through");
+ $(".page-footer").toggleClass("padding-bottom-extra");
+ }
+ }
+ } else {
+ Playercontrols.play_pause_show();
+ }
+ },
- play_pause: function()
- {
- if(!chromecastAvailable){
- if(Player.player.getPlayerState() == YT.PlayerState.PLAYING)
- {
- Player.pauseVideo();
- if(Helper.mobilecheck() && !window.MSStream){
- //if(Helper.mobilecheck() && !/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream){
- document.getElementById("player").style.display = "none";
- $(".video-container").toggleClass("click-through");
- $(".page-footer").toggleClass("padding-bottom-extra");
- }
- } else if(Player.player.getPlayerState() == YT.PlayerState.PAUSED || Player.player.getPlayerState() === YT.PlayerState.ENDED || (Player.player.getPlayerState() === YT.PlayerState.CUED)){
- Player.playVideo();
- //if(Helper.mobilecheck() && !/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream){
- if(Helper.mobilecheck() && !window.MSStream){
- document.getElementById("player").style.display = "block";
- $(".video-container").toggleClass("click-through");
- $(".page-footer").toggleClass("padding-bottom-extra");
- }
- }
- } else {
- Playercontrols.play_pause_show();
- }
- },
+ play_pause_show: function() {
+ if(chromecastAvailable){
+ if($("#play").hasClass("hide")){
+ Player.pauseVideo();
+ } else if($("#pause").hasClass("hide")){
+ Player.playVideo();
+ }
+ } else {
- play_pause_show: function()
- {
- if(chromecastAvailable){
- if($("#play").hasClass("hide")){
- Player.pauseVideo();
- } else if($("#pause").hasClass("hide")){
- Player.playVideo();
- }
- } else {
+ if(!$("#pause").hasClass("hide")) {
+ $("#pause").toggleClass("hide");
+ $("#pause-overlay").toggleClass("hide");
+ }
+ if($("#play").hasClass("hide")) {
+ $("#play").toggleClass("hide");
+ $("#play-overlay").toggleClass("hide");
+ }
+ }
+ },
- if(document.getElementById("pause").className.split(" ").length == 1){
- $("#pause").toggleClass("hide");
- $("#pause-overlay").toggleClass("hide");
- }
- if(document.getElementById("play").className.split(" ").length == 2){
- $("#play").toggleClass("hide");
- $("#play-overlay").toggleClass("hide");
- }
- }
- },
+ settings: function() {
+ $("#qS").toggleClass("hide");
+ },
- settings: function()
- {
- $("#qS").toggleClass("hide");
- },
+ changeQuality: function(wantedQ) {
+ if(Player.player.getPlaybackQuality != wantedQ) {
+ Player.player.setPlaybackQuality(wantedQ);
+ Player.player.getPlaybackQuality();
+ }
+ $("#qS").toggleClass("hide");
+ },
- changeQuality: function(wantedQ)
- {
- if(Player.player.getPlaybackQuality != wantedQ)
- {
- Player.player.setPlaybackQuality(wantedQ);
- Player.player.getPlaybackQuality();
- }
- $("#qS").toggleClass("hide");
- },
+ mute_video: function() {
+ if(!Player.player.isMuted()) {
+ if(chromecastAvailable) castSession.sendMessage("urn:x-cast:zoff.me", {type: "mute"});
+ Playercontrols.choose_button(0, true);
+ Player.player.mute();
+ } else {
+ if(chromecastAvailable)castSession.sendMessage("urn:x-cast:zoff.me", {type: "unMute"});
+ Player.player.unMute();
+ Playercontrols.choose_button(Player.player.getVolume(), false);
+ }
+ },
- mute_video: function()
- {
- if(!Player.player.isMuted())
- {
- if(chromecastAvailable) castSession.sendMessage("urn:x-cast:zoff.me", {type: "mute"});
- Playercontrols.choose_button(0, true);
- Player.player.mute();
- }else
- {
- if(chromecastAvailable)castSession.sendMessage("urn:x-cast:zoff.me", {type: "unMute"});
- Player.player.unMute();
- Playercontrols.choose_button(Player.player.getVolume(), false);
- }
- },
+ setVolume: function(vol) {
+ Player.setVolume(vol);
+ Playercontrols.choose_button(vol, false);
+ if(Player.player.isMuted())
+ Player.player.unMute();
+ },
- setVolume: function(vol)
- {
- Player.setVolume(vol);
- Playercontrols.choose_button(vol, false);
- if(Player.player.isMuted())
- Player.player.unMute();
- },
+ choose_button: function(vol, mute) {
+ if(!mute){
+ if(vol >= 0 && vol <= 33) {
+ if(!$("#v-full").hasClass("hide")) {
+ $("#v-full").toggleClass("hide");
+ $("#v-full-overlay").toggleClass("hide");
+ }
+ if(!$("#v-medium").hasClass("hide")) {
+ $("#v-medium").toggleClass("hide");
+ $("#v-medium-overlay").toggleClass("hide");
+ }
+ if($("#v-low").hasClass("hide")) {
+ $("#v-low").toggleClass("hide");
+ $("#v-low-overlay").toggleClass("hide");
+ }
+ if(!$("#v-mute").hasClass("hide")) {
+ $("#v-mute").toggleClass("hide");
+ $("#v-mute-overlay").toggleClass("hide");
+ }
+ } else if(vol >= 34 && vol <= 66) {
+ if(!$("#v-full").hasClass("hide")) {
+ $("#v-full").toggleClass("hide");
+ $("#v-full-overlay").toggleClass("hide");
+ }
+ if($("#v-medium").hasClass("hide")) {
+ $("#v-medium").toggleClass("hide");
+ $("#v-medium-overlay").toggleClass("hide");
+ }
+ if(!$("#v-low").hasClass("hide")) {
+ $("#v-low").toggleClass("hide");
+ $("#v-low-overlay").toggleClass("hide");
+ }
+ if(!$("#v-mute").hasClass("hide")) {
+ $("#v-mute").toggleClass("hide");
+ $("#v-mute-overlay").toggleClass("hide");
+ }
+ } else if(vol >= 67 && vol <= 100) {
+ if($("#v-full").hasClass("hide")) {
+ $("#v-full").toggleClass("hide");
+ $("#v-full-overlay").toggleClass("hide");
+ }
+ if(!$("#v-medium").hasClass("hide")) {
+ $("#v-medium").toggleClass("hide");
+ $("#v-medium-overlay").toggleClass("hide");
+ }
+ if(!$("#v-low").hasClass("hide")) {
+ $("#v-low").toggleClass("hide");
+ $("#v-low-overlay").toggleClass("hide");
+ }
+ if(!$("#v-mute").hasClass("hide")) {
+ $("#v-mute").toggleClass("hide");
+ $("#v-mute-overlay").toggleClass("hide");
+ }
+ }
+ } else {
+ if(!$("#v-full").hasClass("hide")) {
+ $("#v-full").toggleClass("hide");
+ $("#v-full-overlay").toggleClass("hide");
+ }
+ if(!$("#v-medium").hasClass("hide")) {
+ $("#v-medium").toggleClass("hide");
+ $("#v-medium-overlay").toggleClass("hide");
+ }
+ if(!$("#v-low").hasClass("hide")) {
+ $("#v-low").toggleClass("hide");
+ $("#v-low-overlay").toggleClass("hide");
+ }
+ if($("#v-mute").hasClass("hide")) {
+ $("#v-mute").toggleClass("hide");
+ $("#v-mute-overlay").toggleClass("hide");
+ }
+ }
+ },
- choose_button: function(vol, mute)
- {
- if(!mute){
- if(vol >= 0 && vol <= 33){
- if(document.getElementById("v-full").className.split(" ").length == 1){
- $("#v-full").toggleClass("hide");
- $("#v-full-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-medium").className.split(" ").length == 1){
- $("#v-medium").toggleClass("hide");
- $("#v-medium-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-low").className.split(" ").length == 2){
- $("#v-low").toggleClass("hide");
- $("#v-low-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-mute").className.split(" ").length == 1){
- $("#v-mute").toggleClass("hide");
- $("#v-mute-overlay").toggleClass("hide");
- }
- }else if(vol >= 34 && vol <= 66){
- if(document.getElementById("v-full").className.split(" ").length == 1){
- $("#v-full").toggleClass("hide");
- $("#v-full-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-medium").className.split(" ").length == 2){
- $("#v-medium").toggleClass("hide");
- $("#v-medium-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-low").className.split(" ").length == 1){
- $("#v-low").toggleClass("hide");
- $("#v-low-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-mute").className.split(" ").length == 1){
- $("#v-mute").toggleClass("hide");
- $("#v-mute-overlay").toggleClass("hide");
- }
- }else if(vol >= 67 && vol <= 100){
- if(document.getElementById("v-full").className.split(" ").length == 2){
- $("#v-full").toggleClass("hide");
- $("#v-full-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-medium").className.split(" ").length == 1){
- $("#v-medium").toggleClass("hide");
- $("#v-medium-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-low").className.split(" ").length == 1){
- $("#v-low").toggleClass("hide");
- $("#v-low-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-mute").className.split(" ").length == 1){
- $("#v-mute").toggleClass("hide");
- $("#v-mute-overlay").toggleClass("hide");
- }
- }
- }else
- {
- if(document.getElementById("v-full").className.split(" ").length == 1){
- $("#v-full").toggleClass("hide");
- $("#v-full-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-medium").className.split(" ").length == 1){
- $("#v-medium").toggleClass("hide");
- $("#v-medium-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-low").className.split(" ").length == 1){
- $("#v-low").toggleClass("hide");
- $("#v-low-overlay").toggleClass("hide");
- }
- if(document.getElementById("v-mute").className.split(" ").length == 2){
- $("#v-mute").toggleClass("hide");
- $("#v-mute-overlay").toggleClass("hide");
- }
- }
- },
+ playPause: function() {
+ state = Player.player.getPlayerState();
+ button = document.getElementById("playpause");
+ if(state == YT.PlayerState.PLAYING) {
+ Player.pauseVideo();
+ } else if(state == YT.PlayerState.PAUSED) {
+ Player.playVideo();
+ }
+ },
- playPause: function()
- {
- state = Player.player.getPlayerState();
- button = document.getElementById("playpause");
- if(state == YT.PlayerState.PLAYING)
- {
- Player.pauseVideo();
- }else if(state == YT.PlayerState.PAUSED)
- {
- Player.playVideo();
- }
- },
-
- volumeOptions: function()
- {
- if(!chromecastAvailable){
- if(Player.player.isMuted())
- {
- Player.player.unMute();
- vol = Player.player.getVolume();
- $("#volume").slider("value", Player.player.getVolume());
- }
- else
- {
- Player.player.mute();
- $("#volume").slider("value", 0);
- }
- }
- },
-
- hoverMute: function(foo)
- {
- vol = Player.player.getVolume();
-
- }
+ volumeOptions: function() {
+ if(!chromecastAvailable) {
+ if(Player.player.isMuted()) {
+ Player.player.unMute();
+ vol = Player.player.getVolume();
+ $("#volume").slider("value", Player.player.getVolume());
+ } else {
+ Player.player.mute();
+ $("#volume").slider("value", 0);
+ }
+ }
+ },
+ hoverMute: function(foo) {
+ vol = Player.player.getVolume();
+ }
};
diff --git a/server/public/assets/js/remotecontroller.js b/server/public/assets/js/remotecontroller.js
index a71a70ac..cc4c4339 100755
--- a/server/public/assets/js/remotecontroller.js
+++ b/server/public/assets/js/remotecontroller.js
@@ -1,116 +1,86 @@
var start = true;
mobilecheck = function() {
- var check = false;
- (function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4)))check = true;})(navigator.userAgent||navigator.vendor||window.opera);
- return check;
+ var check = false;
+ (function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4)))check = true;})(navigator.userAgent||navigator.vendor||window.opera);
+ return check;
};
$(document).ready(function (){
- document.title = "Zoff Remote";
- setTimeout(function(){$("#search").focus();},500);
- var connection_options = {
- 'sync disconnect on unload':true,
- 'secure': true
- };
+ document.title = "Zoff Remote";
+ setTimeout(function(){$("#search").focus();},500);
+ var connection_options = {
+ 'sync disconnect on unload':true,
+ 'secure': true
+ };
- $("#about").modal();
- $("#contact").modal();
+ $("#about").modal();
+ $("#contact").modal();
- if(window.location.hostname == "remote.zoff.me") add = "https://zoff.me";
- else add = "localhost";
- socket = io.connect(add+':8080', connection_options);
- socket.on('update_required', function() {
- window.location.reload(true);
- });
- id = window.location.pathname.split("/")[1];
- if(id)
- {
- id = id.toLowerCase();
- Remotecontroller.control();
- }
-
- /*try{
- $.ajax({
- type: "GET",
- url: "https://api.github.com/users/zoff-music/received_events",
- success: function(git_info){
- for(var i = 0; i < git_info.length; i++) {
- if(git_info[i].type == "PushEvent") {
- $("#latest-commit").html("Latest Commit:
" +
- git_info[0].created_at.substring(0,10) +
- ": " + git_info[0].actor.display_login +
- "
" +
- git_info[0].payload.commits[0].sha.substring(0,10) + ": " +
- git_info[0].payload.commits[0].message+"
"+empty_results_html+"
").appendTo($("#results")).show("blind", 83.33);
- if(Helper.contains($(".search_loader_spinner").attr("class").split(" "), "active"))
- $(".search_loader_spinner").removeClass("active");
+ $("