@ -449,5 +449,6 @@
"Licenses": "",
"Privacy": "",
"short": "",
"long": ""
"long": "",
"This channel doesn't have any content.": ""
}
"Licenses": "Licences",
"Privacy": "Privacy",
"short": "Short (< 4 minutes)",
"long": "Long (> 20 minutes)"
"long": "Long (> 20 minutes)",
"This channel doesn't have any content.": "This channel doesn't have any content."
@ -311,6 +311,9 @@ private class YoutubeTabsExtractor < ItemsContainerExtractor
elsif items_container = renderer_container_contents["channelVideoPlayerRenderer"]?
# Parsing for channel trailer is already taken elsewhere
next
elsif items_container = renderer_container_contents["messageRenderer"]?
# Likely an error message regarding content being empty
else
items_container = renderer_container_contents
end
@ -16,7 +16,7 @@ class Invidious::Routes::Channels < Invidious::Routes::BaseRoute
items = fetch_channel_home(ucid, channel)
has_trailer = false
if items[0].is_a? Video
if !items.empty? && items[0].is_a? Video
has_trailer = true
@ -57,4 +57,10 @@
</div>
<% end %>
<% if items.size == 0 %>
<h3 class="pure-u-1 h-box">
<%= translate(locale, "This channel doesn't have any content.")%>
</h3>