Class: Banzai::Filter::PlayableLinkFilter
- Inherits:
-
HTML::Pipeline::Filter
- Object
- HTML::Pipeline::Filter
- Banzai::Filter::PlayableLinkFilter
- Includes:
- Concerns::PipelineTimingCheck
- Defined in:
- lib/banzai/filter/playable_link_filter.rb
Overview
Find every image that isn’t already wrapped in an ‘a` tag, and that has a `src` attribute ending with an audio or video extension, add a new audio or video node and a “Download” link in the case the media cannot be played.
Direct Known Subclasses
Constant Summary
Constants included from Concerns::PipelineTimingCheck
Concerns::PipelineTimingCheck::MAX_PIPELINE_SECONDS
Instance Method Summary collapse
Methods included from Concerns::PipelineTimingCheck
Instance Method Details
#call ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/banzai/filter/playable_link_filter.rb', line 11 def call doc.xpath('descendant-or-self::img[not(ancestor::a)]').each do |el| el.replace(media_node(doc, el)) if has_media_extension?(el) end doc end |