Added list-passwords for regular users

This commit is contained in:
Kasper Rynning-Tønnesen
2017-05-04 23:36:25 +02:00
parent fa38f69f75
commit adbd1bb88d
12 changed files with 58 additions and 30 deletions

View File

@@ -121,7 +121,6 @@ var Admin = {
$("#password").val("");
$("#password").attr("placeholder", "Change channel password");
$(".user-password-li").removeClass("hide");
console.log($(".password_protected").prop("checked"));
if($(".password_protected").prop("checked")) {
$(".change_user_pass").removeClass("hide");
}
@@ -311,9 +310,10 @@ var Admin = {
skipping = form.skip.checked;
shuffling = form.shuffle.checked;
configs = {
voting: voting, addsongs: addsongs, longsongs: longsongs, frontpage: frontpage, allvideos: allvideos, removeplay: removeplay, adminpass: adminpass, skipping: skipping, shuffling: shuffling, userpass: userpass, userpass_changed: userpass_changed
voting: voting, addsongs: addsongs, longsongs: longsongs, frontpage: frontpage, allvideos: allvideos, removeplay: removeplay, adminpass: adminpass, skipping: skipping, shuffling: shuffling, userpass: CryptoJS.SHA256(userpass).toString(), userpass_changed: userpass_changed
};
Crypt.set_userpass(chan.toLowerCase(), CryptoJS.SHA256(userpass).toString());
socket.emit("conf", configs);
},

View File

@@ -1,6 +1,7 @@
var Crypt = {
conf_pass: undefined,
user_pass: undefined,
init: function(){
@@ -13,7 +14,7 @@ var Crypt = {
}
try{
conf_arr = Crypt.decrypt(Crypt.getCookie("_opt"), "_opt");
conf_arr = Crypt.decrypt(Crypt.getCookie("_opt"), "_opt");
}catch(err){
conf_arr = Crypt.decrypt(Crypt.create_cookie("_opt"), "_opt");
}
@@ -150,6 +151,16 @@ var Crypt = {
Crypt.encrypt(Crypt.conf_pass, chan.toLowerCase());
},
set_userpass: function(chan, pass) {
Crypt.conf_pass.passwords["userpass"] = pass;
Crypt.encrypt(Crypt.conf_pass, chan);
},
remove_userpass:function(chan){
delete Crypt.conf_pass.passwords["userpass"];
Crypt.encrypt(Crypt.conf_pass, chan.toLowerCase());
},
set_name:function(name){
conf_arr.name = encodeURIComponent(name).replace(/\W/g, '');
Crypt.encrypt(conf_arr, "_opt");
@@ -170,6 +181,11 @@ var Crypt = {
return undefined;
},
get_userpass: function(chan) {
if(Crypt.conf_pass !== undefined) return Crypt.conf_pass.passwords["userpass"];
return "";
},
set_remote: function(val){
conf_arr.remote = val;
Crypt.encrypt(conf_arr, "_opt");

View File

@@ -43,7 +43,7 @@ $(document).ready(function(){
socket = io.connect(''+add+':8080', connection_options);
socket.on("get_list", function(){
setTimeout(function(){socket.emit('list', chan.toLowerCase());},1000);
setTimeout(function(){socket.emit('list', {channel: chan.toLowerCase(), pass: Crypt.get_userpass(chan.toLowerCase())});},1000);
});
socket.on("viewers", function(view)

View File

@@ -42,7 +42,7 @@ var Hostcontroller = {
w_p = true;
var add = "";
if(private_channel) add = Crypt.getCookie("_uI") + "_";
socket.emit("list", add + chan.toLowerCase());
socket.emit("list", {channel: add + chan.toLowerCase(), pass: Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
/*if(Crypt.get_pass(chan.toLowerCase()) !== undefined && Crypt.get_pass(chan.toLowerCase()) != ""){
socket.emit("password", {password: Crypt.crypt_pass(Crypt.get_pass(chan.toLowerCase())), channel: chan.toLowerCase()});

View File

@@ -10,7 +10,10 @@ var List = {
channel_function: function(msg)
{
user_auth_started = false;
if(user_auth_started) {
user_auth_started = false;
$("#user_password").modal("close");
}
switch(msg.type)
{
case "list":

View File

@@ -15,6 +15,7 @@ var adminpass = "";
var filesadded = "";
var player_ready = false;
var viewers = 1;
var temp_user_pass = "";
var dragging = false;
var user_auth_started = false;
var user_auth_avoid = false;
@@ -213,9 +214,9 @@ function init(){
socket = io.connect(''+add+':8080', connection_options);
}
Crypt.init();
setup_auth_listener();
Crypt.init();
if(Crypt.get_offline()){
$(".offline_switch_class")[0].checked = true;
change_offline(true, offline);
@@ -247,7 +248,7 @@ function init(){
if(no_socket){
var add = "";
if(private_channel) add = Crypt.getCookie("_uI") + "_";
socket.emit("list", add + chan.toLowerCase());
socket.emit("list", {channel: add + chan.toLowerCase(), pass: Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
}
$("#viewers").tooltip({
delay: 5,
@@ -488,6 +489,14 @@ function setup_auth_listener() {
$("#player_overlay").removeClass("hide");
$("#player_overlay").css("display", "block");
$("#user_password").modal("open");
Crypt.remove_userpass(chan.toLowerCase());
});
socket.on('auth_accepted', function(msg) {
if(msg.hasOwnProperty("value") && msg.value) {
userpass = temp_user_pass;
Crypt.set_userpass(chan.toLowerCase(), userpass);
}
});
}
@@ -517,7 +526,7 @@ function get_list_listener(){
socket.on("get_list", function(){
var add = "";
if(private_channel) add = Crypt.getCookie("_uI") + "_";
socket.emit("list", add + chan.toLowerCase());
socket.emit("list", {channel: add + chan.toLowerCase(), pass: Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
});
}
@@ -712,7 +721,7 @@ function change_offline(enabled, already_offline){
socket.emit("pos");
var add = "";
if(private_channel) add = Crypt.getCookie("_uI") + "_";
socket.emit("list", add + chan.toLowerCase());
socket.emit("list", {channel: add + chan.toLowerCase(), pass: Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
if($("#controls").hasClass("ewresize")) $("#controls").removeClass("ewresize");
}
}
@@ -983,12 +992,12 @@ $(document).on("change", ".password_protected", function(e) {
$(document).on("submit", "#user-password-channel-form", function(e) {
e.preventDefault();
console.log(user_auth_started);
if(user_auth_started) {
user_auth_started = false;
//user_auth_started = false;
//$("#user_password").modal('close');
temp_user_pass = CryptoJS.SHA256($("#user-pass-input").val()).toString();
$("#user-pass-input").val("");
socket.emit("list", chan.toLowerCase());
socket.emit("list", {channel: chan.toLowerCase(), pass: Crypt.crypt_pass(temp_user_pass)});
} else {
$("#user_password").modal('close');
userpass = $("#user-pass-input").val();
@@ -1007,12 +1016,12 @@ $(document).on("click", ".change_user_pass_btn", function(e) {
$(document).on("click", ".submit-user-password", function(e) {
e.preventDefault();
console.log(user_auth_started);
if(user_auth_started) {
user_auth_started = false;
//user_auth_started = false;
//$("#user_password").modal('close');
temp_user_pass = CryptoJS.SHA256($("#user-pass-input").val()).toString();
$("#user-pass-input").val("");
socket.emit("list", chan.toLowerCase());
socket.emit("list", {channel: chan.toLowerCase(), pass: Crypt.crypt_pass(temp_user_pass)});
} else {
$("#user_password").modal('close');
userpass = $("#user-pass-input").val();
@@ -1121,16 +1130,14 @@ $(document).on("submit", ".channel-finder", function(e){
$(document).off("keyup", "keyup.autocomplete", function(e){
if(e.keyCode == 13){
e.preventDefault();
console.log(e.keyCode);
console.log($(this).val());
}
});
$(document).off("keydown", "keydown.autocomplete", function(e){
if(e.keyCode == 13){
e.preventDefault();
console.log(e.keyCode);
console.log($(this).val());
}
});*/
@@ -1678,7 +1685,7 @@ function onepage_load(){
var add = "";
w_p = true;
if(private_channel) add = Crypt.getCookie("_uI") + "_";
socket.emit("list", add + chan.toLowerCase());
socket.emit("list", {channel: add + chan.toLowerCase(), pass: Crypt.crypt_pass(Crypt.get_userpass(chan.toLowerCase()))});
}else if(url_split[3] === ""){
user_change_password = false;
clearTimeout(width_timeout);

View File

@@ -229,7 +229,6 @@ var Player = {
},
loadVideoById: function(id){
console.log(id);
if(chromecastAvailable){
castSession.sendMessage("urn:x-cast:zoff.me", {type: "loadVideo", videoId: id});
chrome.cast.media.GenericMediaMetadata({metadataType: "GENERIC", title:song_title, image: 'https://img.youtube.com/vi/'+id+'/mqdefault.jpg'});

View File

@@ -60,7 +60,6 @@ $(document).on("click", "#skipbutton", function()
$(document).on("submit", "#remoteform", function(e)
{
console.log("testing");
e.preventDefault();
/*
if(start)