You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.3 KiB

13 years ago
class ApplicationController < ActionController::Base
before_filter :authenticate_user!
include SentientController
protect_from_forgery
13 years ago
before_filter :check_honeypot
13 years ago
rescue_from CanCan::AccessDenied, ActiveScaffold::ActionNotAllowed do |exception|
flash.now[:error] = exception.message
render_access_denied
13 years ago
end
rescue_from ActiveScaffold::ActionNotAllowed do |exception|
flash.now[:error] = I18n.t("errors.action_not_allowed")
render_access_denied
13 years ago
end
13 years ago
protected
def render_access_denied
layout = request.xhr? ? false : 'errors'
render :template => 'errors/access_denied', :layout => layout
end
13 years ago
def ensure_nested_under_domain
raise CanCan::AccessDenied, "not found" unless nested? and nested_parent_record.is_a?(Domain)
end
13 years ago
def client_remote_ip
@client_remote_ip ||= request.env["HTTP_X_FORWARDED_FOR"]
13 years ago
end
13 years ago
def current_ability
@current_ability ||= ::Ability.new(:user => current_user)
end
13 years ago
helper_method :client_remote_ip
helper_method :respond_to
13 years ago
def check_honeypot
render :nothing => true if params[Settings.honeypot].present?
end
13 years ago
def nested_via_records?
nested? && nested.association && nested.association.collection? && nested.association.name == :records
end
13 years ago
end