From 18b77224d3ce4ac6aa14278ca2dca34efb0956f5 Mon Sep 17 00:00:00 2001 From: Thibaut Girka Date: Sun, 26 May 2019 15:10:33 +0200 Subject: [PATCH] Translate incoming remote img tags by a link --- app/lib/sanitize_config.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/lib/sanitize_config.rb b/app/lib/sanitize_config.rb index 75c916485..a9a2351a4 100644 --- a/app/lib/sanitize_config.rb +++ b/app/lib/sanitize_config.rb @@ -19,6 +19,17 @@ class Sanitize node['class'] = class_list.join(' ') end + IMG_TAG_TRANSFORMER = lambda do |env| + node = env[:node] + + return unless env[:node_name] == 'img' + + node.name = 'a' + + node['href'] = node['src'] + node.content = "[🖼 #{node['alt'] || node['href']}]" + end + MASTODON_STRICT ||= freeze_config( elements: %w(p br span a abbr del pre blockquote code b strong u sub i em h1 h2 h3 h4 h5 ul ol li), @@ -43,6 +54,7 @@ class Sanitize transformers: [ CLASS_WHITELIST_TRANSFORMER, + IMG_TAG_TRANSFORMER, ] )