Module: Sinatra
- Defined in:
- lib/janus/sinatra.rb
Defined Under Namespace
Modules: Janus
Instance Method Summary collapse
Instance Method Details
#janus(*resources) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/janus/sinatra.rb', line 25 def janus(*resources) resources.each do |plural| singular = plural.to_s.singularize klass = singular.camelize.constantize class_eval <<-EOV def authenticate_#{singular}! authenticate!(:#{singular}) end def #{singular}_signed_in? signed_in?(:#{singular}) end def current_#{singular} @current_#{singular} ||= janus.authenticate(:#{singular}) end def #{singular}_session janus.session(:#{singular}) if #{singular}_signed_in? end EOV end end |