Method: WhurlEngine::Config.authorize_with

Defined in:
lib/whurl_engine/config.rb

.authorize_with(*args, &block) ⇒ Object

Setup authorization to be run as a before filter This is run inside the controller instance so you can setup any authorization you need to.

By default, there is no authorization.

To use an authorization adapter, pass the name of the adapter. For example, to use with CanCan, pass it like this.

See the wiki for more on authorization.

Examples:

Custom

WhurlEngine.config do |config|
  config.authorize_with do
    redirect_to root_path unless warden.user.is_admin?
  end
end

CanCan

WhurlEngine.config do |config|
  config.authorize_with :cancan
end

See Also:



35
36
37
38
39
40
41
42
43
44
45
# File 'lib/whurl_engine/config.rb', line 35

def authorize_with(*args, &block)
  extension = args.shift
  if(extension)
    @authorize = Proc.new {
      @authorization_adapter = WhurlEngine::AUTHORIZATION_ADAPTERS[extension].new(*([self] + args).compact)
    }
  else
    @authorize = block if block
  end
  @authorize || DEFAULT_AUTHORIZE
end