Add mixes to genre channels
This commit is contained in:
parent
44f4057876
commit
2ebc773863
|
@ -2471,7 +2471,14 @@ get "/channel/:ucid" do |env|
|
|||
sort_by ||= "last"
|
||||
|
||||
items, continuation = fetch_channel_playlists(ucid, author, auto_generated, continuation, sort_by)
|
||||
items.select! { |item| item.is_a?(SearchPlaylist) && !item.videos.empty? }
|
||||
items.uniq! do |item|
|
||||
if item.responds_to?(:title)
|
||||
item.title
|
||||
elsif item.responds_to?(:author)
|
||||
item.author
|
||||
end
|
||||
end
|
||||
items.select! { |item| item.responds_to?(:thumbnail_id) && item.thumbnail_id }
|
||||
items = items.map { |item| item.as(SearchPlaylist) }
|
||||
items.each { |item| item.author = "" }
|
||||
else
|
||||
|
|
|
@ -416,12 +416,18 @@ def extract_shelf_items(nodeset, ucid = nil, author_name = nil)
|
|||
thumbnail_id = playlist_thumbnail.match(/\/vi\/(?<video_id>[a-zA-Z0-9_-]{11})\/\w+\.jpg/).try &.["video_id"]
|
||||
end
|
||||
|
||||
video_count_label = child_node.xpath_node(%q(.//span[@class="formatted-video-count-label"]))
|
||||
if video_count_label
|
||||
video_count = video_count_label.content.strip.match(/^\d+/).try &.[0].to_i?
|
||||
end
|
||||
video_count ||= 50
|
||||
|
||||
items << SearchPlaylist.new(
|
||||
playlist_title,
|
||||
plid,
|
||||
author_name,
|
||||
ucid,
|
||||
50,
|
||||
video_count,
|
||||
Array(SearchPlaylistVideo).new,
|
||||
thumbnail_id
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue