Sha256: 89e407393e52099ff3ce4fb8b55c47eedc2aaf10de4c42f97c1f731725d1066b

Contents?: true

Size: 879 Bytes

Versions: 15

Compression:

Stored size: 879 Bytes

Contents

# frozen_string_literal: true

module Decidim
  # This class deals with uploading images to newsletters.
  class NewsletterTemplateImageUploader < ImageUploader
    process resize_to_fit: [550, 300]

    def max_image_height_or_width
      8000
    end

    # Overwrite: If the content block is in preview mode, then we show the
    # preview image. Otherwise, we use the default behavior.
    def url(*args)
      return preview_url if in_preview?

      super
    end

    def preview_url(*_args)
      manifest_images = model.content_block.manifest.images
      image = manifest_images.find { |manifest_image| manifest_image[:name] == mounted_as } || {}
      preview = image[:preview]

      if preview && preview.respond_to?(:call)
        preview.call
      else
        preview
      end
    end

    def in_preview?
      model.content_block.in_preview
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
decidim-core-0.24.3 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.6 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.24.2 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.5 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.24.1 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.24.0 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.24.0.rc2 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.4 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.24.0.rc1 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.3 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.2 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.1 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.1.rc1 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.23.0 app/uploaders/decidim/newsletter_template_image_uploader.rb
decidim-core-0.22.0 app/uploaders/decidim/newsletter_template_image_uploader.rb