Search: Don't error if AuthorId does not exist
This commit is contained in:
parent
545a5937d8
commit
d2672e5eea
@ -31,9 +31,13 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
<p dir="auto"><%= HTML.escape(item.title) %></p>
|
<p dir="auto"><%= HTML.escape(item.title) %></p>
|
||||||
</a>
|
</a>
|
||||||
|
<% if !item.ucid.to_s.empty? %>
|
||||||
<a href="/channel/<%= item.ucid %>">
|
<a href="/channel/<%= item.ucid %>">
|
||||||
<p dir="auto"><b><%= HTML.escape(item.author) %><% if !item.is_a?(InvidiousPlaylist) && !item.author_verified.nil? && item.author_verified %> <i class="icon ion ion-md-checkmark-circle"></i><% end %></b></p>
|
<p dir="auto"><b><%= HTML.escape(item.author) %><% if !item.is_a?(InvidiousPlaylist) && !item.author_verified.nil? && item.author_verified %> <i class="icon ion ion-md-checkmark-circle"></i><% end %></b></p>
|
||||||
</a>
|
</a>
|
||||||
|
<% else %>
|
||||||
|
<p dir="auto"><b><%= HTML.escape(item.author) %><% if !item.is_a?(InvidiousPlaylist) && !item.author_verified.nil? && item.author_verified %> <i class="icon ion ion-md-checkmark-circle"></i><% end %></b></p>
|
||||||
|
<% end %>
|
||||||
<% when MixVideo %>
|
<% when MixVideo %>
|
||||||
<a href="/watch?v=<%= item.id %>&list=<%= item.rdid %>">
|
<a href="/watch?v=<%= item.id %>&list=<%= item.rdid %>">
|
||||||
<% if !env.get("preferences").as(Preferences).thin_mode %>
|
<% if !env.get("preferences").as(Preferences).thin_mode %>
|
||||||
@ -51,9 +55,13 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
<p dir="auto"><%= HTML.escape(item.title) %></p>
|
<p dir="auto"><%= HTML.escape(item.title) %></p>
|
||||||
</a>
|
</a>
|
||||||
|
<% if !item.ucid.to_s.empty? %>
|
||||||
<a href="/channel/<%= item.ucid %>">
|
<a href="/channel/<%= item.ucid %>">
|
||||||
<p dir="auto"><b><%= HTML.escape(item.author) %></b></p>
|
<p dir="auto"><b><%= HTML.escape(item.author) %></b></p>
|
||||||
</a>
|
</a>
|
||||||
|
<% else %>
|
||||||
|
<p dir="auto"><b><%= HTML.escape(item.author) %></b></p>
|
||||||
|
<% end %>
|
||||||
<% when PlaylistVideo %>
|
<% when PlaylistVideo %>
|
||||||
<a style="width:100%" href="/watch?v=<%= item.id %>&list=<%= item.plid %>&index=<%= item.index %>">
|
<a style="width:100%" href="/watch?v=<%= item.id %>&list=<%= item.plid %>&index=<%= item.index %>">
|
||||||
<% if !env.get("preferences").as(Preferences).thin_mode %>
|
<% if !env.get("preferences").as(Preferences).thin_mode %>
|
||||||
@ -85,9 +93,15 @@
|
|||||||
</a>
|
</a>
|
||||||
|
|
||||||
<div class="video-card-row flexible">
|
<div class="video-card-row flexible">
|
||||||
<div class="flex-left"><a href="/channel/<%= item.ucid %>">
|
<div class="flex-left">
|
||||||
|
<% if !item.ucid.to_s.empty? %>
|
||||||
|
<a href="/channel/<%= item.ucid %>">
|
||||||
<p class="channel-name" dir="auto"><%= HTML.escape(item.author) %></p>
|
<p class="channel-name" dir="auto"><%= HTML.escape(item.author) %></p>
|
||||||
</a></div>
|
</a>
|
||||||
|
<% else %>
|
||||||
|
<p class="channel-name" dir="auto"><%= HTML.escape(item.author) %></p>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
<% endpoint_params = "?v=#{item.id}&list=#{item.plid}" %>
|
<% endpoint_params = "?v=#{item.id}&list=#{item.plid}" %>
|
||||||
<%= rendered "components/video-context-buttons" %>
|
<%= rendered "components/video-context-buttons" %>
|
||||||
</div>
|
</div>
|
||||||
@ -147,9 +161,15 @@
|
|||||||
</a>
|
</a>
|
||||||
|
|
||||||
<div class="video-card-row flexible">
|
<div class="video-card-row flexible">
|
||||||
<div class="flex-left"><a href="/channel/<%= item.ucid %>">
|
<div class="flex-left">
|
||||||
|
<% if !item.ucid.to_s.empty? %>
|
||||||
|
<a href="/channel/<%= item.ucid %>">
|
||||||
<p class="channel-name" dir="auto"><%= HTML.escape(item.author) %><% if !item.is_a?(ChannelVideo) && !item.author_verified.nil? && item.author_verified %> <i class="icon ion ion-md-checkmark-circle"></i><% end %></p>
|
<p class="channel-name" dir="auto"><%= HTML.escape(item.author) %><% if !item.is_a?(ChannelVideo) && !item.author_verified.nil? && item.author_verified %> <i class="icon ion ion-md-checkmark-circle"></i><% end %></p>
|
||||||
</a></div>
|
</a>
|
||||||
|
<% else %>
|
||||||
|
<p class="channel-name" dir="auto"><%= HTML.escape(item.author) %><% if !item.is_a?(ChannelVideo) && !item.author_verified.nil? && item.author_verified %> <i class="icon ion ion-md-checkmark-circle"></i><% end %></p>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
<% endpoint_params = "?v=#{item.id}" %>
|
<% endpoint_params = "?v=#{item.id}" %>
|
||||||
<%= rendered "components/video-context-buttons" %>
|
<%= rendered "components/video-context-buttons" %>
|
||||||
|
@ -764,7 +764,7 @@ module HelperExtractors
|
|||||||
# Retrieves the ID required for querying the InnerTube browse endpoint.
|
# Retrieves the ID required for querying the InnerTube browse endpoint.
|
||||||
# Raises when it's unable to do so
|
# Raises when it's unable to do so
|
||||||
def self.get_browse_id(container)
|
def self.get_browse_id(container)
|
||||||
return container.dig("navigationEndpoint", "browseEndpoint", "browseId").as_s
|
return container.dig?("navigationEndpoint", "browseEndpoint", "browseId").try &.as_s || ""
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user