diff --git a/php/footer.php b/php/footer.php
index fd18c113..31ff29b8 100755
--- a/php/footer.php
+++ b/php/footer.php
@@ -80,6 +80,7 @@
+
diff --git a/server/server.js b/server/server.js
index 7cf57a65..04f081da 100755
--- a/server/server.js
+++ b/server/server.js
@@ -114,6 +114,11 @@ io.on('connection', function(socket){
});
});
+ socket.on('guid', function(arr)
+ {
+ io.sockets.emit(arr[0], [arr[1], arr[2]]);
+ });
+
socket.on('list', function(list)
{
if(list !== undefined && list !== null && list != "")
@@ -122,7 +127,8 @@ io.on('connection', function(socket){
list = list.split(',');
coll = list[0].toLowerCase();
//guid = list[1];
-
+ socket.emit("guid", rndName(guid));
+ console.log(coll);
//console.log(name + " joined list " + coll);
check_inlist(coll, guid, socket, name);
@@ -455,6 +461,22 @@ io.on('connection', function(socket){
socket.emit("toast", "wrongpass");
});
+ socket.on('change_channel', function()
+ {
+ if(in_list)
+ {
+ if(contains(lists[coll], guid))
+ {
+ //console.log(name + " left list " + coll);
+ var index = lists[coll].indexOf(guid);
+ lists[coll].splice(index, 1);
+ io.sockets.emit(coll+",viewers", lists[coll].length);
+ io.sockets.emit('chat,'+coll, [name, " left"]);
+ }
+
+ }
+ });
+
socket.on('disconnect', function()
{
if(in_list)
diff --git a/static/js/chat.js b/static/js/chat.js
index ac0c2370..5eaca3ba 100644
--- a/static/js/chat.js
+++ b/static/js/chat.js
@@ -14,6 +14,8 @@ function chat(data)
return;
}
+setup_chat_listener(chan);
+
document.getElementById("chat-btn").addEventListener("click", function(){
console.log("clicked");
$("#text-chat-input").focus();
@@ -62,26 +64,29 @@ $(window).focus(function(){
}
});
-socket.on("chat,"+chan.toLowerCase(), function(data)
+function setup_chat_listener(channel)
{
- if($("#chat-bar").position()["left"] != 0)
+ socket.on("chat,"+channel.toLowerCase(), function(data)
{
- if(data[1].indexOf(":") >= 0){
- //$("#chat-btn").css("color", "grey");
- if(!blink_interval_exists)
- {
- $("#favicon").attr("href", "static/images/highlogo.png");
- blink_interval_exists = true;
- blink_interval = setInterval(chat_blink, 2000);
+ if($("#chat-bar").position()["left"] != 0)
+ {
+ if(data[1].indexOf(":") >= 0){
+ //$("#chat-btn").css("color", "grey");
+ if(!blink_interval_exists)
+ {
+ $("#favicon").attr("href", "static/images/highlogo.png");
+ blink_interval_exists = true;
+ blink_interval = setInterval(chat_blink, 2000);
+ }
}
}
- }
- var color = intToARGB(hashCode(data[0])).substring(0,6);
- $("#chatchannel").append("
"+data[0]+"");
- var in_text = document.createTextNode(data[1]);
- $("#chatchannel li:last")[0].appendChild(in_text);
- document.getElementById("chatchannel").scrollTop = document.getElementById("chatchannel").scrollHeight
-});
+ var color = intToARGB(hashCode(data[0])).substring(0,6);
+ $("#chatchannel").append(""+data[0]+"");
+ var in_text = document.createTextNode(data[1]);
+ $("#chatchannel li:last")[0].appendChild(in_text);
+ document.getElementById("chatchannel").scrollTop = document.getElementById("chatchannel").scrollHeight
+ });
+}
function chat_blink()
{
diff --git a/static/js/list.js b/static/js/list.js
index 6824979f..26d13390 100755
--- a/static/js/list.js
+++ b/static/js/list.js
@@ -84,7 +84,7 @@ function populate_list(msg, conf_only)
}else player_name = "#player";
}
}
-
+
$("#settings").css("visibility", "visible");
$("#settings").css("opacity", "1");
$("#wrapper").css("opacity", "1");
diff --git a/static/js/youtube.js b/static/js/youtube.js
index 22124a8c..60f321b6 100755
--- a/static/js/youtube.js
+++ b/static/js/youtube.js
@@ -23,56 +23,60 @@ var paused = false;
var playing = false;
//play new song
-socket.on(chan.toLowerCase()+",np", function(obj)
+function setup_youtube_listener(channel)
{
- console.log(obj);
- if(obj[0].length == 0){
- console.log("Empty list");
- document.getElementById('song-title').innerHTML = "Empty channel. Add some songs!";
- $("#player_overlay").height($("#player").height());
- if(!window.mobilecheck())
- $("#player_overlay").toggleClass("hide");
- importOldList(chan.toLowerCasettings-barse());
- }
- else{
- console.log("gotten new song");
- $("#player_overlay").addClass("hide");
- video_id = obj[0][0]["id"];
- conf = obj[1][0];
- time = obj[2];
- seekTo = time - conf["startTime"];
- song_title = obj[0][0]["title"];
- getTitle(song_title, viewers);
- if(player_ready && !window.mobilecheck())
- {
- if(ytplayer.getVideoUrl().split('v=')[1] != video_id)
- {
- ytplayer.loadVideoById(video_id);
- setBGimage(video_id);
- notifyUser(video_id, song_title);
- if(paused)
- ytplayer.pauseVideo();
- }else
- console.log("like");
- if(!paused)
- ytplayer.playVideo();
- if(ytplayer.getDuration() > seekTo)
- ytplayer.seekTo(seekTo);
+ socket.on(channel.toLowerCase()+",np", function(obj)
+ {
+ console.log(obj);
+ if(obj[0].length == 0){
+ console.log("Empty list");
+ document.getElementById('song-title').innerHTML = "Empty channel. Add some songs!";
+ $("#player_overlay").height($("#player").height());
+ if(!window.mobilecheck())
+ $("#player_overlay").toggleClass("hide");
+ importOldList(channel.toLowerCasettings-barse());
}
- else
+ else{
+ console.log("gotten new song");
+ $("#player_overlay").addClass("hide");
+ video_id = obj[0][0]["id"];
+ conf = obj[1][0];
+ time = obj[2];
+ seekTo = time - conf["startTime"];
+ song_title = obj[0][0]["title"];
getTitle(song_title, viewers);
- }
-});
+ if(player_ready && !window.mobilecheck())
+ {
+ if(ytplayer.getVideoUrl().split('v=')[1] != video_id)
+ {
+ ytplayer.loadVideoById(video_id);
+ setBGimage(video_id);
+ notifyUser(video_id, song_title);
+ if(paused)
+ ytplayer.pauseVideo();
+ }else
+ console.log("like");
+ if(!paused)
+ ytplayer.playVideo();
+ if(ytplayer.getDuration() > seekTo)
+ ytplayer.seekTo(seekTo);
+ }
+ else
+ getTitle(song_title, viewers);
+ }
+ });
-socket.on(chan.toLowerCase()+",viewers", function(view)
-{
- viewers = view;
- if(song_title !== undefined)
- getTitle(song_title, viewers);
-});
+ socket.on(channel.toLowerCase()+",viewers", function(view)
+ {
+ viewers = view;
+ if(song_title !== undefined)
+ getTitle(song_title, viewers);
+ });
+}
$(document).ready(function()
{
+ setup_youtube_listener(chan);
//Materialize.toast("Passwords have been reset. If anything is not right, please send us a mail @ contact@zoff.no", 10000);
$("#settings").sideNav({
menuWidth: 300, // Default is 240