Class: PotMarkdown::Filters::SanitizeIframeFilter
- Inherits:
-
HTML::Pipeline::Filter
- Object
- HTML::Pipeline::Filter
- PotMarkdown::Filters::SanitizeIframeFilter
- Defined in:
- lib/pot_markdown/filters/sanitize_iframe_filter.rb
Constant Summary collapse
- SAFE_IFRAME_URL =
[ # youtube %r{\Ahttps://www.youtube.com/embed/[^/]+\z}, # nicovideo %r{\Ahttps?://ext.nicovideo.jp/thumb/[^/]+\z}, # nicolive %r{\Ahttps?://live.nicovideo.jp/embed/.+\z}, # nicoseiga %r{\Ahttps?://ext.seiga.nicovideo.jp/thumb/[^/]+\z}, # niconisolid %r{\Ahttps?://3d.nicovideo.jp/externals/(?:widget|embedded)\?id=td\d+\z}, # niconare %r{\Ahttps?://niconare.nicovideo.jp/embed_works/kn\d+\z}, # slideshare %r{\A(https?:)?//www.slideshare.net/slideshow/embed_code/key/[^/]+\z}, # plicy %r{\Ahttps?://plicy.net/GameEmbed/\d+\z} ].freeze
Instance Method Summary collapse
Instance Method Details
#call ⇒ Object
7 8 9 10 11 12 |
# File 'lib/pot_markdown/filters/sanitize_iframe_filter.rb', line 7 def call doc.xpath('.//iframe').each do |element| element.remove unless safe?(element) end doc end |