Module: Gitter::Breadcrumbs
Instance Method Summary collapse
- #breadcrumbs ⇒ Object
- #breadcrumbs_info ⇒ Object
- #render_breadcrumbs(delim = '>', params = {}) ⇒ Object
Methods included from Utils
Instance Method Details
#breadcrumbs ⇒ Object
9 10 11 12 13 14 15 16 17 |
# File 'lib/gitter/breadcrumbs.rb', line 9 def @breadcrumbs ||= begin p = {} text = filters.map do |filter| p[filter.label] = filter_value(filter.name) end p end end |
#breadcrumbs_info ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/gitter/breadcrumbs.rb', line 19 def @breadcrumbs_info ||= begin p = {} filters.inject({}) do |memo,filter| value = filter_value filter.name if value.present? p[filter.name] = value memo[filter.name] = { label: filter.label, value: value, url: url_for(scoped_params(p)) } end memo end end end |
#render_breadcrumbs(delim = '>', params = {}) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/gitter/breadcrumbs.rb', line 33 def delim = '>', params = {} delim_tag = h.content_tag :span, delim, {class: 'breadcrumb_delim'} p = {} = filters.map do |filter| value = filter_value filter.name if value.present? s = h.content_tag :span, "#{filter.label}:", class: 'breadcrumb_key' s += h.content_tag :span, value, class: 'breadcrumb_value' p[filter.name] = value h.link_to s, url_for(scoped_params(p).merge(params)) else nil end end.compact if .present? h.content_tag :span, .join(delim_tag), {class: 'breadcrumbs'}, false else nil end end |