Class: SimpleNavigation::Adapters::Sinatra
- Defined in:
- lib/simple_navigation/adapters/sinatra.rb
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Base
Class Method Summary collapse
Instance Method Summary collapse
- #content_tag(type, content, options = {}) ⇒ Object
- #context_for_eval ⇒ Object
- #current_page?(url) ⇒ Boolean
-
#initialize(context) ⇒ Sinatra
constructor
A new instance of Sinatra.
- #link_to(name, url, options = {}) ⇒ Object
- #request_path ⇒ Object
- #request_uri ⇒ Object
Constructor Details
#initialize(context) ⇒ Sinatra
Returns a new instance of Sinatra.
12 13 14 15 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 12 def initialize(context) @context = context @request = context.request end |
Class Method Details
.register ⇒ Object
7 8 9 10 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 7 def self.register SimpleNavigation.set_env(sinatra_root, sinatra_environment) ::Sinatra::Application.send(:helpers, SimpleNavigation::Helpers) end |
Instance Method Details
#content_tag(type, content, options = {}) ⇒ Object
48 49 50 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 48 def content_tag(type, content, ={}) "<#{type} #{to_attributes()}>#{content}</#{type}>" end |
#context_for_eval ⇒ Object
17 18 19 20 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 17 def context_for_eval raise 'no context set for evaluation the config file' unless context context end |
#current_page?(url) ⇒ Boolean
30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 30 def current_page?(url) url_string = CGI.unescape(url) if url_string.index("?") uri = request_uri else uri = request_uri.split('?').first end if url_string =~ /^\w+:\/\// url_string == "#{request.protocol}#{request.host_with_port}#{uri}" else url_string == uri end end |
#link_to(name, url, options = {}) ⇒ Object
44 45 46 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 44 def link_to(name, url, ={}) "<a href='#{url}' #{to_attributes()}>#{name}</a>" end |
#request_path ⇒ Object
26 27 28 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 26 def request_path request.path end |
#request_uri ⇒ Object
22 23 24 |
# File 'lib/simple_navigation/adapters/sinatra.rb', line 22 def request_uri request.fullpath end |