Class: Prismic::Fragments::Link

Inherits:
Fragment
  • Object
show all
Defined in:
lib/prismic/fragments/link.rb

Direct Known Subclasses

DocumentLink, FileLink, ImageLink, WebLink

Instance Method Summary collapse

Methods inherited from Fragment

#as_text

Instance Method Details

#as_html(link_resolver = nil) ⇒ Object



18
19
20
# File 'lib/prismic/fragments/link.rb', line 18

def as_html(link_resolver=nil)
  %(#{start_html(link_resolver, @target)}#{url(link_resolver)}#{end_html})
end

#end_htmlObject



14
15
16
# File 'lib/prismic/fragments/link.rb', line 14

def end_html
  %(</a>)
end

#start_html(link_resolver = nil, target = nil) ⇒ Object



6
7
8
9
10
11
12
# File 'lib/prismic/fragments/link.rb', line 6

def start_html(link_resolver = nil, target = nil)
  unless target.nil?
    %(<a href="#{url(link_resolver)}" target="#{target}" rel="noopener">)
  else 
    %(<a href="#{url(link_resolver)}">)
  end
end

#url(link_resolver = nil) ⇒ Object

This method is abstract.

Returns the URL of the link

Parameters:

  • link_resolver (LinkResolver) (defaults to: nil)

    The link resolver

Raises:

  • (NotImplementedError)


27
28
29
# File 'lib/prismic/fragments/link.rb', line 27

def url(link_resolver = nil)
  raise NotImplementedError, "Method #{__method__} is not implemented for #{inspect}", caller
end