class GovukPublishingComponents::Presenters::Breadcrumb
Attributes
crumb[R]
index[R]
Public Class Methods
new(crumb, index)
click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 31 def initialize(crumb, index) @crumb = crumb @index = index + 1 end
Public Instance Methods
is_link?()
click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 44 def is_link? crumb[:url].present? end
item_list_element()
click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 36 def item_list_element { "@type" => "ListItem", "position" => index, "item" => list_item_item, } end
path()
click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 48 def path crumb[:url] end
tracking_data(breadcrumbs_length)
click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 52 def tracking_data(breadcrumbs_length) data = { track_category: "breadcrumbClicked", track_action: index, track_label: path, track_options: { dimension28: breadcrumbs_length.to_s, dimension29: crumb[:title], }, } is_homepage = crumb[:url] == "/" if is_homepage data[:track_category] = "homeLinkClicked" data[:track_action] = "homeBreadcrumb" data[:track_label] = "" data[:track_options] = "{}" end data end
Private Instance Methods
list_item_item()
click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 79 def list_item_item path = crumb[:url] item = { "name" => crumb[:title] } item["@id"] = Plek.new.website_root + path if path item end