Break out NWS into a user option

This commit is contained in:
calzoneman 2013-06-04 15:41:34 -04:00
parent ddc1c56986
commit cfc866400c
4 changed files with 30 additions and 9 deletions

View File

@ -835,7 +835,6 @@ Callbacks = {
}
}
/*
$.getScript(IO_URL+"/socket.io/socket.io.js", function() {
try {
socket = io.connect(IO_URL);
@ -847,9 +846,3 @@ $.getScript(IO_URL+"/socket.io/socket.io.js", function() {
Callbacks.disconnect();
}
});
*/
socket = new NotWebsocket();
for(var key in Callbacks) {
socket.on(key, Callbacks[key]);
}

View File

@ -71,7 +71,8 @@ var USEROPTS = {
modhat : parseBool(getOrDefault("cytube_modhat", false)),
blink_title : parseBool(getOrDefault("cytube_blink_title", false)),
sync_accuracy : parseFloat(getOrDefault("cytube_sync_accuracy", 2)) || 2,
chatbtn : parseBool(getOrDefault("cytube_chatbtn", false))
chatbtn : parseBool(getOrDefault("cytube_chatbtn", false)),
altsocket : parseBool(getOrDefault("cytube_altsocket", false))
};
applyOpts();
$("#optlink").click(showUserOpts);

View File

@ -1070,6 +1070,13 @@ function showUserOpts() {
sendbtn.prop("checked", USEROPTS.chatbtn);
addOption("Send Button", sendbtncontainer);
var altsocketcontainer = $("<label/>").addClass("checkbox")
.text("Use alternative socket connection");
var altsocket = $("<input/>").attr("type", "checkbox")
.appendTo(altsocketcontainer);
altsocket.prop("checked", USEROPTS.altsocket);
addOption("Alternate Socket", altsocketcontainer);
var profile = $("<a/>").attr("target", "_blank")
.addClass("btn")
.attr("href", "./account.html")
@ -1100,6 +1107,7 @@ function showUserOpts() {
USEROPTS.show_timestamps = showts.prop("checked");
USEROPTS.blink_title = blink.prop("checked");
USEROPTS.chatbtn = sendbtn.prop("checked");
USEROPTS.altsocket = altsocket.prop("checked");
if(RANK >= Rank.Moderator) {
USEROPTS.modhat = modhat.prop("checked");
}
@ -1179,6 +1187,26 @@ function applyOpts() {
}
});
}
if(USEROPTS.altsocket) {
socket.disconnect();
socket = new NotWebsocket();
for(var key in Callbacks) {
socket.on(key, Callbacks[key]);
}
}
// Switch from NotWebsocket => Socket.io
else if(socket && typeof socket.poll !== "undefined") {
try {
socket = io.connect(IO_URL);
for(var key in Callbacks) {
socket.on(key, Callbacks[key]);
}
}
catch(e) {
Callbacks.disconnect();
}
}
}
function idToURL(data) {

View File

@ -2,7 +2,6 @@ var NotWebsocket = function() {
this.connected = false;
this.polltmr = false;
$.getJSON(WEB_URL + "/nws/connect", function(data) {
console.log(data);
this.hash = data;
this.connected = true;
this.recv(["connect", undefined]);