From 95ebfd34c5b5484e9fc3d9932e3e8b61c0985603 Mon Sep 17 00:00:00 2001 From: Omar Roth Date: Wed, 21 Nov 2018 19:26:55 -0600 Subject: [PATCH] Don't wait on server for subscription count --- src/invidious.cr | 8 +------- src/invidious/views/subscription_manager.ecr | 8 ++++---- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/invidious.cr b/src/invidious.cr index dd134a72a..74ae35dbf 100644 --- a/src/invidious.cr +++ b/src/invidious.cr @@ -1444,8 +1444,6 @@ get "/subscription_ajax" do |env| redirect ||= "false" redirect = redirect == "true" - count_text = "" - if user user = user.as(User) @@ -1508,17 +1506,13 @@ get "/subscription_ajax" do |env| PG_DB.exec("UPDATE users SET subscriptions = array_remove(subscriptions,$1) WHERE email = $2", channel_id, email) end end - - count_text = PG_DB.query_one?("SELECT cardinality(subscriptions) FROM users WHERE email = $1", email, as: Int32) - count_text ||= 0 - count_text = "#{number_with_separator(count_text)} subscriptions" end if redirect env.redirect referer else env.response.content_type = "application/json" - {"countText" => count_text}.to_json + "{}" end end diff --git a/src/invidious/views/subscription_manager.ecr b/src/invidious/views/subscription_manager.ecr index d420fbf8e..ac1c0cddc 100644 --- a/src/invidious/views/subscription_manager.ecr +++ b/src/invidious/views/subscription_manager.ecr @@ -4,7 +4,7 @@
-

<%= subscriptions.size %> subscriptions

+

<%= subscriptions.size %> subscriptions

@@ -44,6 +44,8 @@ function remove_subscription(target) { var row = target.parentNode.parentNode.parentNode.parentNode; row.style.display = "none"; + var count = document.getElementById("count") + count.innerText = count.innerText - 1; var url = "/subscription_ajax?action_remove_subscriptions=1&redirect=false&c=" + target.getAttribute("data-id"); var xhr = new XMLHttpRequest(); @@ -54,9 +56,7 @@ function remove_subscription(target) { xhr.onreadystatechange = function() { if (xhr.readyState == 4) { - if (xhr.status == 200) { - document.getElementById("count").innerHTML = xhr.response.countText; - } else { + if (xhr.status != 200) { row.style.display = ""; } }