# Filters added to this controller apply to all controllers in the application. # Likewise, all the methods added will be available for all controllers. class ApplicationController < ActionController::Base # include AuthenticatedSystem # before_filter :login_required, :except => [:new] helper :all # include all helpers, all the time # before_filter :check_authentication, :except => [:signin] before_filter :get_locations, :except => [:signin ] def check_authentication unless session[:user] session[:intended_action] = action_name session[:intended_controller] = controller_name redirect_to :controller => 'dashboard', :action => 'signin' end end def signin if request.post? session[:user] = User.authenticate(params[:email], params[:password]) redirect_to :action => session[:intended_action], :controller => session[:intended_controller] else render :layout => 'signin' end end def signout session[:user] = nil redirect_to home_path end private def get_locations # @locations = User.find(session[:user]).locations @locations = User.find(:first).locations end # See ActionController::RequestForgeryProtection for details # Uncomment the :secret if you're not using the cookie session store protect_from_forgery # :secret => 'd08cf0e8c37217daa3dcee54ee95c1f8' # See ActionController::Base for details # Uncomment this to filter the contents of submitted sensitive data parameters # from your application log (in this case, all fields with names like "password"). # filter_parameter_logging :password end