From a4ebe562541b92084867041415b8deb06e0ea1b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kasper=20Rynning-T=C3=B8nnesen?= Date: Thu, 15 Mar 2018 15:38:08 +0100 Subject: [PATCH] Updated how suggestions work and display - Always showing suggested tab in tablist - Fixed issue with contextmenu going all wonky when opened on suggested elements --- server/public/assets/js/admin.js | 60 +++++++++---------- server/public/assets/js/channel.js | 2 +- server/public/assets/js/functions.js | 8 +-- server/public/assets/js/listeners.js | 2 + server/public/assets/js/suggestions.js | 4 +- .../partials/channel/suggestions.handlebars | 4 +- .../public/partials/channel/tabs.handlebars | 8 +-- server/routing/client/api.js | 4 +- 8 files changed, 43 insertions(+), 49 deletions(-) diff --git a/server/public/assets/js/admin.js b/server/public/assets/js/admin.js index 3622e4b2..9b389f11 100755 --- a/server/public/assets/js/admin.js +++ b/server/public/assets/js/admin.js @@ -11,6 +11,11 @@ var Admin = { if(Admin.logged_in) { $("#thumbnail_form").css("display", "inline-block"); $("#description_form").css("display", "inline-block"); + $("#user_suggests").removeClass("hide"); + $("#user-suggest-html").removeClass("hide"); + $(".suggested-badge").removeClass("hide") + } else { + Admin.hideUserSuggested(); } $(".delete-context-menu").removeClass("context-menu-disabled"); names = ["vote","addsongs","longsongs","frontpage", "allvideos", @@ -38,15 +43,7 @@ var Admin = { if($(".password_protected").prop("checked")) { $(".change_user_pass").removeClass("hide"); } - if(!client) { - if(!Helper.contains($(".playlist-tabs").attr("class").split(" "), "hide")) { - $(".playlist-tabs-loggedIn").removeClass("hide"); - $(".playlist-tabs").addClass("hide"); - } - if($(".tabs").length > 0 && !changing_to_frontpage) { - $('ul.playlist-tabs-loggedIn').tabs('select_tab', $(".playlist-tabs li a.active").attr("href").substring(1)); - } - } + if($("#admin-lock").html() != "lock_open"){ $("#admin-lock").addClass("clickable"); $("#admin-lock").html("lock_open"); @@ -60,6 +57,18 @@ var Admin = { } }, + hideUserSuggested: function() { + if(!$("#user_suggests").hasClass("hide")) { + $("#user_suggests").addClass("hide") + } + if(!$("#user-suggest-html").hasClass("hide")) { + $("#user-suggest-html").addClass("hide"); + } + if(!$(".suggested-badge").hasClass("hide")) { + $(".suggested-badge").addClass("hide"); + } + }, + conf: function(msg) { if(msg[0].adminpass == ""){ ////Crypt.remove_pass(chan.toLowerCase()); @@ -85,18 +94,17 @@ var Admin = { before_toast(); /*if(Crypt.get_pass(chan.toLowerCase())) {*/ //Crypt.remove_pass(chan.toLowerCase()); - Admin.display_logged_out(); - if(Admin.logged_in) { socket.emit("logout"); Materialize.toast("Logged out", 4000); + Admin.display_logged_out(); } else { Materialize.toast("Not logged in", 4000); } - Admin.logged_in = false; }, display_logged_out: function() { + Admin.logged_in = false; w_p = true; adminpass = ""; names = ["vote","addsongs","longsongs","frontpage", "allvideos", @@ -131,20 +139,8 @@ var Admin = { if(!$(".change_user_pass").hasClass("hide")) { $(".change_user_pass").addClass("hide"); } - if(!client) { - if(!Helper.contains($(".playlist-tabs-loggedIn").attr("class").split(" "), "hide")) { - $(".playlist-tabs-loggedIn").addClass("hide"); - $(".playlist-tabs").removeClass("hide"); - } + Admin.hideUserSuggested(); - if($("ul.playlist-tabs-loggedIn .playlist-tab-links.active").attr("href") == "#suggestions" && $(".tabs").length > 0 && !changing_to_frontpage) - { - $('ul.playlist-tabs').tabs('select_tab', 'wrapper'); - $('ul.playlist-tabs-loggedIn').tabs('select_tab', 'wrapper'); - } else if($(".tabs").length > 0 && !changing_to_frontpage){ - $('ul.playlist-tabs').tabs('select_tab', $(".playlist-tabs-loggedIn li a.active").attr("href").substring(1)); - } - } $("#admin-lock").removeClass("clickable"); $("#password").attr("placeholder", "Enter admin password"); if(!$(".delete-context-menu").hasClass("context-menu-disabled")) { @@ -164,18 +160,18 @@ var Admin = { hasadmin = conf_array.adminpass != ""; + var show_disabled = true; + if(hasadmin && Admin.logged_in || !hasadmin) { + show_disabled = false; + } for (var i = 0; i < names.length; i++) { document.getElementsByName(names[i])[0].checked = (conf_array[names[i]] === true); - $("input[name="+names[i]+"]").attr("disabled", !Admin.logged_in); + $("input[name="+names[i]+"]").attr("disabled", show_disabled); } if((hasadmin) && !Admin.logged_in) { if($("#admin-lock").html() != "lock") Admin.display_logged_out(); - } else if(!hasadmin && Crypt.get_pass(chan.toLowerCase()) === undefined) { - if(!Helper.contains($(".playlist-tabs").attr("class").split(" "), "hide")) { - $(".playlist-tabs-loggedIn").removeClass("hide"); - $(".playlist-tabs").addClass("hide"); - } + } else if(!hasadmin) { $("#password").attr("placeholder", "Create admin password"); } else { if($(".password_protected").prop("checked")) { @@ -222,7 +218,7 @@ var Admin = { userpass: Crypt.crypt_pass(pass_send), userpass_changed: userpass_changed }; - + emit("conf", configs); }, diff --git a/server/public/assets/js/channel.js b/server/public/assets/js/channel.js index d5d8f1b9..6f01b9ac 100644 --- a/server/public/assets/js/channel.js +++ b/server/public/assets/js/channel.js @@ -44,7 +44,7 @@ var Channel = { if(Player !== undefined && !client) Player.stopInterval= false; if(!client) { - $('ul.playlist-tabs').tabs(); + //$('ul.playlist-tabs').tabs(); $('ul.playlist-tabs-loggedIn').tabs(); $('ul.chatTabs').tabs(); } diff --git a/server/public/assets/js/functions.js b/server/public/assets/js/functions.js index e1f70fca..1420593e 100644 --- a/server/public/assets/js/functions.js +++ b/server/public/assets/js/functions.js @@ -203,13 +203,13 @@ function contextListener(that, e) { $("#context-menu-overlay").removeClass("hide"); var left = e.pageX - $(".context-menu-root").width() / 2; var top = e.pageY; - if(left + $(".context-menu-root").width() > $(window).width()) { - left = $(window).width() - $(".context-menu-root").width() - 15; + if(left + 200 > $(window).width()) { + left = $(window).width() - 200 - 15; } else if (left < 0) { left = 11; } - if(top + $(".context-menu-root").width() > $(window).height()) { - top = $(window).height() - $(".context-menu-root").height() - 15; + if(top + 96 > $(window).height()) { + top = $(window).height() - 96 - 15; } else if(top < 0) { top = 15; } diff --git a/server/public/assets/js/listeners.js b/server/public/assets/js/listeners.js index a6455313..a71a8a48 100755 --- a/server/public/assets/js/listeners.js +++ b/server/public/assets/js/listeners.js @@ -1271,6 +1271,8 @@ $(document).on( "click", ".add-suggested", function(e){ var to_display = number_suggested > 9 ? "9+" : number_suggested; if(!$(".suggested-link span.badge.new.white").hasClass("hide") && to_display == 0){ $(".suggested-link span.badge.new.white").addClass("hide"); + $("#user_suggests").addClass("hide"); + $("#suggest_bar").addClass("hide"); } $(".suggested-link span.badge.new.white").text(to_display); diff --git a/server/public/assets/js/suggestions.js b/server/public/assets/js/suggestions.js index 6aac75fc..e174dc9b 100755 --- a/server/public/assets/js/suggestions.js +++ b/server/public/assets/js/suggestions.js @@ -12,7 +12,7 @@ var Suggestions = { } } var to_display = number_suggested > 9 ? "9+" : number_suggested; - if($(".suggested-link span.badge.new.white").hasClass("hide") && number_suggested > 0){ + if($(".suggested-link span.badge.new.white").hasClass("hide") && number_suggested > 0 && Admin.logged_in){ $(".suggested-link span.badge.new.white").removeClass("hide"); } $(".suggested-link span.badge.new.white").text(to_display); @@ -79,7 +79,7 @@ var Suggestions = { if(length === 0){ if(!Helper.contains($("#user_suggests").attr("class").split(" "), "hide")) $("#user_suggests").addClass("hide"); - }else{ + } else if(Admin.logged_in){ $("#user_suggests").removeClass("hide"); } }, diff --git a/server/public/partials/channel/suggestions.handlebars b/server/public/partials/channel/suggestions.handlebars index b4f4a1ba..a5bd2451 100644 --- a/server/public/partials/channel/suggestions.handlebars +++ b/server/public/partials/channel/suggestions.handlebars @@ -2,7 +2,7 @@

YouTube Suggests:

-

Users Suggests:

-
+

Users Suggests:

+
diff --git a/server/public/partials/channel/tabs.handlebars b/server/public/partials/channel/tabs.handlebars index 1ca7b9be..565e5d6e 100644 --- a/server/public/partials/channel/tabs.handlebars +++ b/server/public/partials/channel/tabs.handlebars @@ -1,13 +1,9 @@
{{#if client}} {{else}} -