mirror of
https://github.com/iv-org/invidious.git
synced 2024-11-10 18:28:24 +00:00
Change AboutChannel tabs to hash of name and param
This is to help fetch tab contents from the browse endpoint of youtube later on.
This commit is contained in:
parent
4d1297f257
commit
a777eda66a
@ -135,7 +135,7 @@ struct AboutChannel
|
|||||||
property is_family_friendly : Bool
|
property is_family_friendly : Bool
|
||||||
property allowed_regions : Array(String)
|
property allowed_regions : Array(String)
|
||||||
property related_channels : Array(AboutRelatedChannel)
|
property related_channels : Array(AboutRelatedChannel)
|
||||||
property tabs : Array(String)
|
property tabs : Hash(String, String)
|
||||||
property links : Array(Tuple(String, String, String))
|
property links : Array(Tuple(String, String, String))
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -887,7 +887,7 @@ def get_about_info(ucid, locale)
|
|||||||
country = ""
|
country = ""
|
||||||
total_views = 0_i64
|
total_views = 0_i64
|
||||||
joined = Time.unix(0)
|
joined = Time.unix(0)
|
||||||
tabs = [] of String
|
tabs = {} of String => String # TabName => browseEndpoint params
|
||||||
links = [] of {String, String, String}
|
links = [] of {String, String, String}
|
||||||
|
|
||||||
tabs_json = initdata["contents"]["twoColumnBrowseResultsRenderer"]["tabs"]?.try &.as_a?
|
tabs_json = initdata["contents"]["twoColumnBrowseResultsRenderer"]["tabs"]?.try &.as_a?
|
||||||
@ -936,7 +936,9 @@ def get_about_info(ucid, locale)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
tabs = tabs_json.reject { |node| node["tabRenderer"]?.nil? }.map { |node| node["tabRenderer"]["title"].as_s.downcase }
|
tab_names = tabs_json.reject { |node| node["tabRenderer"]?.nil? }.map { |node| node["tabRenderer"]["title"].as_s.downcase }
|
||||||
|
browse_endpoint_param = tabs_json.reject { |node| node["tabRenderer"]?.nil? }.map { |node| node["tabRenderer"]["endpoint"]["browseEndpoint"]["params"].as_s }
|
||||||
|
tabs = Hash.zip(tab_names, browse_endpoint_param)
|
||||||
end
|
end
|
||||||
|
|
||||||
sub_count = initdata["header"]["c4TabbedHeaderRenderer"]?.try &.["subscriberCountText"]?.try &.["simpleText"]?.try &.as_s?
|
sub_count = initdata["header"]["c4TabbedHeaderRenderer"]?.try &.["subscriberCountText"]?.try &.["simpleText"]?.try &.as_s?
|
||||||
|
@ -75,7 +75,7 @@ class Invidious::Routes::Channels < Invidious::Routes::BaseRoute
|
|||||||
continuation = env.params.query["continuation"]?
|
continuation = env.params.query["continuation"]?
|
||||||
# sort_by = env.params.query["sort_by"]?.try &.downcase
|
# sort_by = env.params.query["sort_by"]?.try &.downcase
|
||||||
|
|
||||||
if !channel.tabs.includes? "community"
|
if !channel.tabs.has_key?("community")
|
||||||
return env.redirect "/channel/#{channel.ucid}"
|
return env.redirect "/channel/#{channel.ucid}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -90,7 +90,7 @@
|
|||||||
</li>
|
</li>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<% if channel.tabs.includes? "community" %>
|
<% if channel.tabs.has_key?("community") %>
|
||||||
<% if content_type == 2 %>
|
<% if content_type == 2 %>
|
||||||
<li class="pure-menu-item pure-menu-selected">
|
<li class="pure-menu-item pure-menu-selected">
|
||||||
<a class="pure-menu-link" href="/channel/<%= channel.ucid %>/community">
|
<a class="pure-menu-link" href="/channel/<%= channel.ucid %>/community">
|
||||||
|
Loading…
Reference in New Issue
Block a user