Allow admins to configure instance favicon and logo (#30040)
This commit is contained in:
@@ -1,21 +1,10 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
class ManifestSerializer < ActiveModel::Serializer
|
||||
include ApplicationHelper
|
||||
include RoutingHelper
|
||||
include ActionView::Helpers::TextHelper
|
||||
|
||||
ICON_SIZES = %w(
|
||||
36
|
||||
48
|
||||
72
|
||||
96
|
||||
144
|
||||
192
|
||||
256
|
||||
384
|
||||
512
|
||||
).freeze
|
||||
|
||||
attributes :id, :name, :short_name,
|
||||
:icons, :theme_color, :background_color,
|
||||
:display, :start_url, :scope,
|
||||
@@ -37,9 +26,12 @@ class ManifestSerializer < ActiveModel::Serializer
|
||||
end
|
||||
|
||||
def icons
|
||||
ICON_SIZES.map do |size|
|
||||
SiteUpload::ANDROID_ICON_SIZES.map do |size|
|
||||
src = site_icon_path('app_icon', size.to_i)
|
||||
src = URI.join(root_url, src).to_s if src.present?
|
||||
|
||||
{
|
||||
src: frontend_asset_url("icons/android-chrome-#{size}x#{size}.png"),
|
||||
src: src || frontend_asset_url("icons/android-chrome-#{size}x#{size}.png"),
|
||||
sizes: "#{size}x#{size}",
|
||||
type: 'image/png',
|
||||
purpose: 'any maskable',
|
||||
|
||||
Reference in New Issue
Block a user