Class: Qiita::Markdown::Filters::GroupMention

Inherits:
HTML::Pipeline::Filter
  • Object
show all
Defined in:
lib/qiita/markdown/filters/group_mention.rb

Defined Under Namespace

Classes: MentionableNode

Instance Method Summary collapse

Instance Method Details

#callObject

Note:

Override



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/qiita/markdown/filters/group_mention.rb', line 6

def call
  if context[:group_mention_url_generator]
    result[:mentioned_groups] ||= []
    doc.search(".//text()").each do |node|
      mentionable_node = MentionableNode.new(node, context[:group_mention_url_generator])
      unless mentionable_node.ignorable?
        result[:mentioned_groups] |= mentionable_node.groups
        node.replace(mentionable_node.replaced_html)
      end
    end
  end
  doc
end