class Reactor::Link::TemporaryLink
Attributes
target[RW]
title[RW]
url[R]
Public Class Methods
new(anything)
click to toggle source
# File lib/reactor/link/temporary_link.rb, line 11 def initialize(anything) link_data = {} case anything when Hash link_data = anything when Integer link_data[:url] = RailsConnector::AbstractObj.find(anything).path else link_data[:url] = anything end self.url = link_data[:url] || link_data[:destination_object] if link_data[:search].present? self.url = "#{self.url}?#{link_data[:search]}" end if link_data[:fragment].present? self.url = "#{self.url}##{link_data[:fragment]}" end self.target = link_data[:target] if link_data.key?(:target) self.title = link_data[:title] if link_data.key?(:title) end
Public Instance Methods
destination_object()
click to toggle source
# File lib/reactor/link/temporary_link.rb, line 44 def destination_object @destination_object ||= RailsConnector::AbstractObj.find_by_path(url) end
external?()
click to toggle source
# File lib/reactor/link/temporary_link.rb, line 8 def external? ; raise TypeError, "This link needs to be persisted to gain any meaningful information" ; end
id()
click to toggle source
# File lib/reactor/link/temporary_link.rb, line 48 def id nil end
internal?()
click to toggle source
# File lib/reactor/link/temporary_link.rb, line 9 def internal? ; false ; end
url=(some_target)
click to toggle source
# File lib/reactor/link/temporary_link.rb, line 34 def url=(some_target) @url = case some_target when RailsConnector::AbstractObj @destination_object = some_target some_target.path else some_target end end