module Sinatra::Backstage::User::Helper
Public Class Methods
included(app)
click to toggle source
# File lib/sinatra/backstage/user/user_helper.rb, line 16 def self.included(app) if app.ancestors.include? Sinatra::Base app.set(:user_access) do |roles| condition do settings.site_routes.each do |controller, hash| if request.path =~ /^(#{hash['href']}$|#{hash['href']}\/.*$)/ # puts "-- Backstage::UserHelper :user_access ( controller = #{controller} )" # puts "-- Backstage::UserHelper :user_access ( hash = #{hash} )" return hash['access'].compare(roles) end end end end ## Hooks app.before :user_access => [:anon] do # puts "-- Backstage::User before authorized? = #{authorized?}" redirect '/' if authorized? # settings.site_routes[request.path]['active'] = true if settings.site_routes[request.path] end # app.after :user_access => [:anon] do # settings.site_routes[request.path]['active'] = false if settings.site_routes[request.path] # end end end
Public Instance Methods
set_session(user)
click to toggle source
# File lib/sinatra/backstage/user/user_helper.rb, line 43 def set_session(user) if user cookies[:username] = user.username cookies[:session] = user.session else cookies[:username] = nil cookies[:session] = nil end end