Fix RS dashboard for auths without Web App
RS auths without a valid domain name will not fetch any metadata and therefore not create a WebApp record. This fixes icons being looked up anyway, resulting in exceptions
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
<% if @image_url %>
|
||||
<%= image_tag @image_url, class: "h-full w-full" %>
|
||||
<% else %>
|
||||
<%= render partial: "icons/remotestorage", locals: { custom_class: "h-full w-full p-0.5 text-gray-200" } %>
|
||||
<% end %>
|
||||
21
app/components/app_catalog/web_app_icon_component.rb
Normal file
21
app/components/app_catalog/web_app_icon_component.rb
Normal file
@@ -0,0 +1,21 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module AppCatalog
|
||||
class WebAppIconComponent < ViewComponent::Base
|
||||
def initialize(web_app:)
|
||||
if web_app&.icon&.attached?
|
||||
@image_url = image_url_for(web_app.icon)
|
||||
elsif web_app&.apple_touch_icon&.attached?
|
||||
@image_url = image_url_for(web_app.apple_touch_icon)
|
||||
end
|
||||
end
|
||||
|
||||
def image_url_for(attachment)
|
||||
if Setting.s3_enabled?
|
||||
s3_image_url(attachment)
|
||||
else
|
||||
Rails.application.routes.url_helpers.rails_blob_path(attachment, only_path: true)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -1,16 +1,10 @@
|
||||
<div class="flex items-center gap-4">
|
||||
<div class="h-16 w-16 flex-none">
|
||||
<% if @web_app.icon.attached? %>
|
||||
<%= image_tag s3_image_url(@web_app.icon), class: "h-full w-full" %>
|
||||
<% elsif @web_app.apple_touch_icon.attached? %>
|
||||
<%= image_tag s3_image_url(@web_app.apple_touch_icon), class: "h-full w-full" %>
|
||||
<% else %>
|
||||
<%= render partial: "icons/remotestorage", locals: { custom_class: "h-full w-full p-0.5 text-gray-200" } %>
|
||||
<% end %>
|
||||
<%= render AppCatalog::WebAppIconComponent.new(web_app: @web_app) %>
|
||||
</div>
|
||||
<div class="flex-grow">
|
||||
<h4 class="mb-1 text-lg font-bold">
|
||||
<%= @web_app.name %>
|
||||
<%= @web_app&.name || @auth.app_name %>
|
||||
</h4>
|
||||
<p class="text-sm text-gray-500">
|
||||
<%= @auth.client_id %>
|
||||
|
||||
Reference in New Issue
Block a user