From f9e0ad698b5facc7802e726c3d6354b741b6a8b1 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 11 Apr 2022 14:56:58 -0300 Subject: [PATCH] reemplazar todos los elementos que traen archivos de public/ --- app/models/post.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index cab7665f..9bc51c51 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -93,13 +93,14 @@ class Post # Renderizar lo estrictamente necesario y convertir a HTML para # poder reemplazar valores. html = Nokogiri::HTML document.renderer.render_document - # Las imágenes se cargan directamente desde el repositorio, porque + # Los archivos se cargan directamente desde el repositorio, porque # no son públicas hasta que se publica el artículo. - html.css('img').each do |img| - next if %r{\Ahttps?://} =~ img.attributes['src'] + html.css('img,audio,video,iframe').each do |element| + src = element.attributes['src'] - img.attributes['src'].value = Rails.application.routes.url_helpers.site_static_file_url(site, - file: img.attributes['src'].value) + next unless src&.value&.start_with? 'public/' + + src.value = Rails.application.routes.url_helpers.site_static_file_url(site, file: src.value) end # Notificar a les usuaries que están viendo una previsualización