diff options
| -rw-r--r-- | src/invidious.cr | 8 | ||||
| -rw-r--r-- | src/views/channel.ecr | 21 |
2 files changed, 29 insertions, 0 deletions
diff --git a/src/invidious.cr b/src/invidious.cr index d3c563c8..71a0f0b6 100644 --- a/src/invidious.cr +++ b/src/invidious.cr @@ -939,6 +939,14 @@ get "/videoplayback*" do |env| end get "/channel/:ucid" do |env| + authorized = env.get? "authorized" + if authorized + sid = env.get("sid").as(String) + + subscriptions = PG_DB.query_one?("SELECT subscriptions FROM users WHERE id = $1", sid, as: Array(String)) + end + subscriptions ||= [] of String + ucid = env.params.url["ucid"] page = env.params.query["page"]?.try &.to_i diff --git a/src/views/channel.ecr b/src/views/channel.ecr index 857ad57a..e67dbfda 100644 --- a/src/views/channel.ecr +++ b/src/views/channel.ecr @@ -3,6 +3,27 @@ <% end %> <h1><%= author %></h1> +<% if authorized %> + <% if subscriptions.includes? ucid %> + <p> + <a href="/subscription_ajax?action_remove_subscriptions=1&c=<%= ucid %>"> + <b>Unsubscribe from <%= author %></b> + </a> + </p> + <% else %> + <p> + <a href="/subscription_ajax?action_create_subscription_to_channel=1&c=<%= ucid %>"> + <b>Subscribe to <%= author %></b> + </a> + </p> + <% end %> +<% else %> + <p> + <a href="/login"> + <b>Login to subscribe to <%= author %></b> + </a> + </p> +<% end %> <% videos.each_slice(4) do |slice| %> <div class="pure-g"> <% slice.each do |video| %> |
