]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Plugin/htmlscrubber.pm
move userlink to IkiWiki.pm
[ikiwiki.git] / IkiWiki / Plugin / htmlscrubber.pm
index 489827167101ebcd2445d6936a8a80a065086adb..bc613f92477ef55ef384f8a1bbf2887670c0e7a7 100644 (file)
@@ -21,15 +21,17 @@ sub scrubber { #{{{
        eval q{use HTML::Scrubber};
        error($@) if $@;
        # Lists based on http://feedparser.org/docs/html-sanitization.html
        eval q{use HTML::Scrubber};
        error($@) if $@;
        # Lists based on http://feedparser.org/docs/html-sanitization.html
+       # With html 5 video and audio tags added.
        $_scrubber = HTML::Scrubber->new(
                allow => [qw{
        $_scrubber = HTML::Scrubber->new(
                allow => [qw{
-                       a abbr acronym address area b big blockquote br
+                       a abbr acronym address area b big blockquote br br/
                        button caption center cite code col colgroup dd del
                        dfn dir div dl dt em fieldset font form h1 h2 h3 h4
                        button caption center cite code col colgroup dd del
                        dfn dir div dl dt em fieldset font form h1 h2 h3 h4
-                       h5 h6 hr i img input ins kbd label legend li map
-                       menu ol optgroup option p pre q s samp select small
+                       h5 h6 hr hr/ i img input ins kbd label legend li map
+                       menu ol optgroup option p p/ pre q s samp select small
                        span strike strong sub sup table tbody td textarea
                        tfoot th thead tr tt u ul var
                        span strike strong sub sup table tbody td textarea
                        tfoot th thead tr tt u ul var
+                       video audio
                }],
                default => [undef, { (
                        map { $_ => 1 } qw{
                }],
                default => [undef, { (
                        map { $_ => 1 } qw{
@@ -45,11 +47,10 @@ sub scrubber { #{{{
                                selected shape size span src start summary
                                tabindex target title type usemap valign
                                value vspace width
                                selected shape size span src start summary
                                tabindex target title type usemap valign
                                value vspace width
+                               poster autoplay loopstart loopend end
+                               playcount controls 
                        } ),
                        "/" => 1, # emit proper <hr /> XHTML
                        } ),
                        "/" => 1, # emit proper <hr /> XHTML
-                       "style" => qr{^[-a-zA-Z0-9]+$}, # only very simple
-                                                       # references allowed,
-                                                       # to avoid javascript
                        }],
        );
        return $_scrubber;
                        }],
        );
        return $_scrubber;