mirror of
				https://github.com/iv-org/invidious.git
				synced 2025-10-31 04:32:02 +00:00 
			
		
		
		
	Playlists: Use subtitle when author is missing (#4025)
This commit is contained in:
		| @@ -89,6 +89,7 @@ struct Playlist | ||||
|   property views : Int64 | ||||
|   property updated : Time | ||||
|   property thumbnail : String? | ||||
|   property subtitle : String? | ||||
|  | ||||
|   def to_json(offset, json : JSON::Builder, video_id : String? = nil) | ||||
|     json.object do | ||||
| @@ -100,6 +101,7 @@ struct Playlist | ||||
|       json.field "author", self.author | ||||
|       json.field "authorId", self.ucid | ||||
|       json.field "authorUrl", "/channel/#{self.ucid}" | ||||
|       json.field "subtitle", self.subtitle | ||||
|  | ||||
|       json.field "authorThumbnails" do | ||||
|         json.array do | ||||
| @@ -356,6 +358,8 @@ def fetch_playlist(plid : String) | ||||
|   updated = Time.utc | ||||
|   video_count = 0 | ||||
|  | ||||
|   subtitle = extract_text(initial_data.dig?("header", "playlistHeaderRenderer", "subtitle")) | ||||
|  | ||||
|   playlist_info["stats"]?.try &.as_a.each do |stat| | ||||
|     text = stat["runs"]?.try &.as_a.map(&.["text"].as_s).join("") || stat["simpleText"]?.try &.as_s | ||||
|     next if !text | ||||
| @@ -397,6 +401,7 @@ def fetch_playlist(plid : String) | ||||
|     views:            views, | ||||
|     updated:          updated, | ||||
|     thumbnail:        thumbnail, | ||||
|     subtitle:         subtitle, | ||||
|   }) | ||||
| end | ||||
|  | ||||
|   | ||||
| @@ -70,7 +70,12 @@ | ||||
|             </b> | ||||
|         <% else %> | ||||
|             <b> | ||||
|                 <a href="/channel/<%= playlist.ucid %>"><%= author %></a> | | ||||
|                 <% if !author.empty? %> | ||||
|                     <a href="/channel/<%= playlist.ucid %>"><%= author %></a> | | ||||
|                 <% elsif !playlist.subtitle.nil? %> | ||||
|                     <% subtitle = playlist.subtitle || "" %> | ||||
|                     <span><%= HTML.escape(subtitle[0..subtitle.rindex(" • ") || subtitle.size]) %></span> | | ||||
|                 <% end %> | ||||
|                 <%= translate_count(locale, "generic_videos_count", playlist.video_count) %> | | ||||
|                 <%= translate(locale, "Updated `x` ago", recode_date(playlist.updated, locale)) %> | ||||
|             </b> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Samantaz Fox
					Samantaz Fox