class UsersController < ApplicationController before_filter :admin_required, :only => [:suspend, :unsuspend, :destroy, :purge] private def admin_required if !logged_in_as_admin? flash[:notice] = "You need to be admin to access that page" session[:return_to] = request.request_uri redirect_to login_path end end end
class ApplicationController < ActionController::Base before_filter :log_session, :set_locale end class ArticlesController < ApplicationController skip_filter :log_session, :only => [:rss] prepend_before_filter :initialize_article_session end
class NewspaperController < ActionController::Base after_filter :compress_response def compress_response self.response.body = compress(response.body) end end
class BlogController < ApplicationController around_filter :time_an_action def time_an_action started = Time.now yield elapsed = Time.now - started logger.info("#{action_name} took #{elapsed} seconds") end end
around_filter do |controller, action| started = Time.now action.call elapsed = Time.now - started end
class TimingFilter def self.filter(controller) started = Time.now yield elapsed = Time.now - started end end around_filter TimingFilter
verify :params => "admin_privileges", :xhr => true, :only => :update_post, :redirect_to => { :action => "settings" } verify :method => :post, :only => [:destroy, :create, :update], :redirect_to => {:action => :list}