Class: BlueDoc::SML::Rules::Mention

Inherits:
Base
  • Object
show all
Defined in:
lib/bluedoc/sml/rules/mention.rb

Constant Summary

Constants inherited from Base

Base::INDENT_PX

Class Method Summary collapse

Methods inherited from Base

to_text

Class Method Details

.match?(node) ⇒ Boolean

Returns:

  • (Boolean)


5
6
7
# File 'lib/bluedoc/sml/rules/mention.rb', line 5

def self.match?(node)
  tag_name(node) == "mention"
end

.to_html(node, opts = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/bluedoc/sml/rules/mention.rb', line 9

def self.to_html(node, opts = {})
  renderer = opts[:renderer]
  attrs = attributes(node)

  name = (attrs[:name] || "").strip
  username = (attrs[:username] || "").strip
  return "" if name.blank?

  if username.present?
    full_name = "#{name} (#{username})"

    %(<a class="user-mention" href="/#{username}" title="#{full_name}">@<span class="mention-name">#{name}</span></a>)
  else
    "@#{name}"
  end
end