breadcrumbs_on_rails_microdata_builder 2.2.1 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,14 +2,14 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "breadcrumbs_on_rails_microdata_builder"
5
- s.version = "2.2.1"
5
+ s.version = "2.2.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Simone Carletti"]
9
9
  s.date = "2012-02-03"
10
10
  s.description = "BreadcrumbsOnRails is a simple Ruby on Rails plugin for creating and managing a breadcrumb navigation for a Rails project."
11
11
  s.email = "weppos@weppos.net"
12
- s.files = [".gitignore", ".travis.yml", "Appraisals", "CHANGELOG.md", "Gemfile", "Gemfile.lock", "LICENSE", "README.md", "Rakefile", "breadcrumbs_on_rails_microdata_builder.gemspec", "gemfiles/3.0.gemfile", "gemfiles/3.0.gemfile.lock", "gemfiles/3.1.gemfile", "gemfiles/3.1.gemfile.lock", "gemfiles/3.2.gemfile", "gemfiles/3.2.gemfile.lock", "init.rb", "lib/breadcrumbs_on_rails_microdata_builder.rb", "lib/breadcrumbs_on_rails_microdata_builder/action_controller.rb", "lib/breadcrumbs_on_rails_microdata_builder/breadcrumbs.rb", "lib/breadcrumbs_on_rails_microdata_builder/railtie.rb", "lib/breadcrumbs_on_rails_microdata_builder/version.rb", "test/test_helper.rb", "test/unit/builder_test.rb", "test/unit/element_test.rb", "test/unit/simple_builder_test.rb"]
12
+ s.files = [".gitignore", ".travis.yml", "Appraisals", "CHANGELOG.md", "Gemfile", "Gemfile.lock", "LICENSE", "README.md", "Rakefile", "breadcrumbs_on_rails_microdata_builder.gemspec", "gemfiles/3.0.gemfile", "gemfiles/3.0.gemfile.lock", "gemfiles/3.1.gemfile", "gemfiles/3.1.gemfile.lock", "gemfiles/3.2.gemfile", "gemfiles/3.2.gemfile.lock", "init.rb", "lib/breadcrumbs_on_rails_microdata_builder.rb", "lib/breadcrumbs_on_rails_microdata_builder/action_controller.rb", "lib/breadcrumbs_on_rails_microdata_builder/breadcrumbs.rb", "lib/breadcrumbs_on_rails_microdata_builder/railtie.rb", "lib/breadcrumbs_on_rails_microdata_builder/version.rb", "lib/breadcrumbs_on_rails_microdata_builder/breadcrumbs/microdata_builder.rb", "lib/breadcrumbs_on_rails_microdata_builder/breadcrumbs/simple_builder.rb", "test/test_helper.rb", "test/unit/builder_test.rb", "test/unit/element_test.rb", "test/unit/simple_builder_test.rb"]
13
13
  s.homepage = "http://www.simonecarletti.com/code/breadcrumbs_on_rails"
14
14
  s.require_paths = ["lib"]
15
15
  s.rubygems_version = "1.8.11"
@@ -0,0 +1,29 @@
1
+ # The MicrodataBuilder is like the default breadcrumb builder.
2
+ # but it allows to inject microdata semantics in the HTML code.
3
+ # cf. http://www.data-vocabulary.org/Breadcrumb/
4
+ #
5
+ # You have to put this in your environment :
6
+ # require 'breadcrumbs_on_rails/breadcrumbs/microdata_builder'
7
+ # then configure your renderer, like this :
8
+ # <%= render_breadcrumbs(
9
+ # :builder => BreadcrumbsOnRails::Breadcrumbs::MicrodataBuilder,
10
+ # ).html_safe %>
11
+ #
12
+ module BreadcrumbsOnRailsMicrodataBuilder
13
+ module Breadcrumbs
14
+ class MicrodataBuilder < Builder
15
+ def render
16
+ @elements.collect do |element|
17
+ render_element(element)
18
+ end.join(@options[:separator] || " &raquo; ")
19
+ end
20
+
21
+ def render_element(element)
22
+ url = (compute_path(element).present? ? compute_path(element) : '#')
23
+ subcontent = @context.content_tag(:span, compute_name(element), :itemprop => 'title')
24
+ content = @context.link_to_unless_current(subcontent, url, :itemprop => 'url')
25
+ @context.content_tag(:span, content, :itemscope => "", :itemtype => "http://data-vocabulary.org/Breadcrumb")
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,29 @@
1
+ # The SimpleBuilder is the default breadcrumb builder.
2
+ # It provides basic functionalities to render a breadcrumb navigation.
3
+ #
4
+ # The SimpleBuilder accepts a limited set of options.
5
+ # If you need more flexibility, create a custom Builder and
6
+ # pass the option :builder => BuilderClass to the <tt>render_breadcrumbs</tt> helper method.
7
+ #
8
+ module BreadcrumbsOnRailsMicrodataBuilder
9
+ module Breadcrumbs
10
+ class SimpleBuilder < Builder
11
+
12
+ def render
13
+ @elements.collect do |element|
14
+ render_element(element)
15
+ end.join(@options[:separator] || " &raquo; ")
16
+ end
17
+
18
+ def render_element(element)
19
+ content = @context.link_to_unless_current(compute_name(element), compute_path(element), element.options)
20
+ if @options[:tag]
21
+ @context.content_tag(@options[:tag], content)
22
+ else
23
+ content
24
+ end
25
+ end
26
+
27
+ end
28
+ end
29
+ end
@@ -11,7 +11,7 @@ module BreadcrumbsOnRailsMicrodataBuilder
11
11
  module Version
12
12
  MAJOR = 2
13
13
  MINOR = 2
14
- PATCH = 1
14
+ PATCH = 2
15
15
  BUILD = nil
16
16
 
17
17
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: breadcrumbs_on_rails_microdata_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1
4
+ version: 2.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -104,6 +104,8 @@ files:
104
104
  - lib/breadcrumbs_on_rails_microdata_builder/breadcrumbs.rb
105
105
  - lib/breadcrumbs_on_rails_microdata_builder/railtie.rb
106
106
  - lib/breadcrumbs_on_rails_microdata_builder/version.rb
107
+ - lib/breadcrumbs_on_rails_microdata_builder/breadcrumbs/microdata_builder.rb
108
+ - lib/breadcrumbs_on_rails_microdata_builder/breadcrumbs/simple_builder.rb
107
109
  - test/test_helper.rb
108
110
  - test/unit/builder_test.rb
109
111
  - test/unit/element_test.rb