diff --git a/app/controllers/procedures_controller.rb b/app/controllers/procedures_controller.rb index 60fd044a0..b4037a4d8 100644 --- a/app/controllers/procedures_controller.rb +++ b/app/controllers/procedures_controller.rb @@ -5,7 +5,12 @@ class ProceduresController < ApplicationController def logo if @procedure.logo.attached? - redirect_to url_for(@procedure.logo.variant(:email)) + logo_variant = @procedure.logo.variant(resize_to_limit: [400, 400]) + if logo_variant.key.present? + redirect_to url_for(logo_variant.processed) + else + redirect_to url_for(@procedure.logo) + end else redirect_to ActionController::Base.helpers.image_url(PROCEDURE_DEFAULT_LOGO_SRC) end diff --git a/app/models/attestation_template.rb b/app/models/attestation_template.rb index 8d9fdfca4..8aba5d352 100644 --- a/app/models/attestation_template.rb +++ b/app/models/attestation_template.rb @@ -106,7 +106,8 @@ class AttestationTemplate < ApplicationRecord def logo_url if logo.attached? - Rails.application.routes.url_helpers.url_for(logo) + logo_variant = logo.variant(resize_to_limit: [400, 400]) + logo_variant.key.present? ? logo_variant.processed.url : Rails.application.routes.url_helpers.url_for(logo) end end diff --git a/app/models/concerns/blob_image_processor_concern.rb b/app/models/concerns/blob_image_processor_concern.rb index 8a7870371..63fac2365 100644 --- a/app/models/concerns/blob_image_processor_concern.rb +++ b/app/models/concerns/blob_image_processor_concern.rb @@ -10,7 +10,7 @@ module BlobImageProcessorConcern end def representation_required? - from_champ? || from_messagerie? + from_champ? || from_messagerie? || is_a_logo? end private @@ -23,6 +23,10 @@ module BlobImageProcessorConcern attachments.any? { _1.record.class == Commentaire } end + def logo? + attachments.any? { _1.name == 'logo' } + end + def watermark_required? attachments.any? { _1.record.class == Champs::TitreIdentiteChamp } end diff --git a/app/models/procedure.rb b/app/models/procedure.rb index ae167b266..9e8072fd4 100644 --- a/app/models/procedure.rb +++ b/app/models/procedure.rb @@ -176,9 +176,7 @@ class Procedure < ApplicationRecord belongs_to :defaut_groupe_instructeur, class_name: 'GroupeInstructeur', inverse_of: false, optional: true - has_one_attached :logo do |attachable| - attachable.variant :email, resize_to_limit: [450, 450] - end + has_one_attached :logo has_one_attached :notice has_one_attached :deliberation @@ -705,7 +703,8 @@ class Procedure < ApplicationRecord def logo_url if logo.attached? - Rails.application.routes.url_helpers.url_for(logo) + logo_variant = logo.variant(resize_to_limit: [400, 400]) + logo_variant.key.present? ? logo_variant.processed.url : Rails.application.routes.url_helpers.url_for(logo) else ActionController::Base.helpers.image_url(PROCEDURE_DEFAULT_LOGO_SRC) end