rosa-build/app/controllers/application_controller.rb

42 lines
1.1 KiB
Ruby
Raw Normal View History

2011-10-18 19:31:59 +01:00
# coding: UTF-8
2011-03-09 13:13:36 +00:00
class ApplicationController < ActionController::Base
protect_from_forgery
layout :layout_by_resource
before_filter lambda { EventLog.current_controller = self },
:only => [:create, :destroy, :open_id, :auto_build, :process_build, :cancel, :publish, :change_visibility] # :update
after_filter lambda { EventLog.current_controller = nil }
helper_method :get_owner
rescue_from CanCan::AccessDenied do |exception|
redirect_to forbidden_url, :alert => exception.message
end
protected
def get_owner
params['user_id'] && User.find_by_id(params['user_id']) ||
params['group_id'] && Group.find_by_id(params['group_id']) || current_user
end
def layout_by_resource
if devise_controller?
"sessions"
else
"application"
end
end
2011-04-11 13:56:22 +01:00
def authenticate_build_service!
if request.remote_ip != APP_CONFIG['build_service_ip']
render :nothing => true, :status => 403
end
end
def authenticate_product_builder!
if request.remote_ip != APP_CONFIG['product_builder_ip']
2011-04-11 13:56:22 +01:00
render :nothing => true, :status => 403
end
end
2011-03-09 13:13:36 +00:00
end