diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2008-03-12 20:50:48 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2008-03-12 20:50:48 +0000 |
commit | d4429a544c50c908d85259eb3706a6960b0a604d (patch) | |
tree | ca7491c5d510f1515197820f50f74ccf9c795e8a /app/controllers/search_controller.rb | |
parent | 3a9b0988c7515371531e47f9eef9f8e60ce352aa (diff) | |
download | redmine-d4429a544c50c908d85259eb3706a6960b0a604d.tar.gz redmine-d4429a544c50c908d85259eb3706a6960b0a604d.zip |
Fixes #820: invalid project id causes a NoMethodError in SearchController (Angel Dobbs-Sciortino).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1237 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/controllers/search_controller.rb')
-rw-r--r-- | app/controllers/search_controller.rb | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/app/controllers/search_controller.rb b/app/controllers/search_controller.rb index 69e1ee503..f15653b63 100644 --- a/app/controllers/search_controller.rb +++ b/app/controllers/search_controller.rb @@ -17,6 +17,8 @@ class SearchController < ApplicationController layout 'base' + + before_filter :find_optional_project helper :messages include MessagesHelper @@ -36,11 +38,6 @@ class SearchController < ApplicationController return end - if params[:id] - find_project - return unless check_project_privacy - end - if @project # only show what the user is allowed to view @object_types = %w(issues news documents changesets wiki_pages messages) @@ -104,8 +101,10 @@ class SearchController < ApplicationController end private - def find_project + def find_optional_project + return true unless params[:id] @project = Project.find(params[:id]) + check_project_privacy rescue ActiveRecord::RecordNotFound render_404 end |