]> cat aescling's git repositories - mastodon.git/commitdiff
Accept richer text from remote statuses
authorThibaut Girka <thib@sitedethib.com>
Wed, 17 Apr 2019 12:23:36 +0000 (14:23 +0200)
committerThibG <thib@sitedethib.com>
Mon, 22 Apr 2019 21:07:14 +0000 (23:07 +0200)
Support abbr, del, pre, blockquote, code, strong, b, em, i, and h1…h5
HTML elements in remote statuses, add corresponding CSS.

app/javascript/flavours/glitch/styles/components/status.scss
app/lib/sanitize_config.rb

index b73dd3d0980f4c4dddd8f90f40cb2cc806422f1d..ce07bd64ab26ca11f273822630dd20c03bf6d49d 100644 (file)
@@ -22,7 +22,7 @@
     margin: -3px 0 0;
   }
 
-  p {
+  p, pre, blockquote {
     margin-bottom: 20px;
     white-space: pre-wrap;
 
     }
   }
 
+  h1, h2, h3, h4, h5 {
+    margin-top: 20px;
+    margin-bottom: 20px;
+  }
+
+  h1, h2 {
+    font-weight: 500;
+    font-size: 18px;
+  }
+
+  h2 {
+    font-size: 16px;
+  }
+
+  blockquote {
+    margin-left: 20px;
+    color: $dark-text-color;
+  }
+
+  b, strong {
+    font-weight: 500;
+  }
+
+  em, i {
+    font-style: italic;
+  }
+
   a {
     color: $secondary-text-color;
     text-decoration: none;
index 1bba4a5a6eb3c90379699d705b3b76e584134f0b..7c376c412ca2ade4a9aef1f213ce3128891f1fb8 100644 (file)
@@ -20,11 +20,13 @@ class Sanitize
     end
 
     MASTODON_STRICT ||= freeze_config(
-      elements: %w(p br span a),
+      elements: %w(p br span a abbr del pre blockquote code b strong i em h1 h2 h3 h4 h5),
 
       attributes: {
-        'a'    => %w(href rel class),
-        'span' => %w(class),
+        'a'          => %w(href rel class title),
+        'span'       => %w(class),
+        'abbr'       => %w(title),
+        'blockquote' => %w(cite),
       },
 
       add_attributes: {
@@ -35,7 +37,8 @@ class Sanitize
       },
 
       protocols: {
-        'a' => { 'href' => HTTP_PROTOCOLS },
+        'a'          => { 'href' => HTTP_PROTOCOLS },
+        'blockquote' => { 'cite' => HTTP_PROTOCOLS },
       },
 
       transformers: [