Mercurial > hg > soundsoftware-site
comparison lib/redmine/search.rb @ 909:cbb26bc654de redmine-1.3
Update to Redmine 1.3-stable branch (Redmine SVN rev 8964)
author | Chris Cannam |
---|---|
date | Fri, 24 Feb 2012 19:09:32 +0000 |
parents | 513646585e45 |
children | 433d4f72a19b |
comparison
equal
deleted
inserted
replaced
908:c6c2cbd0afee | 909:cbb26bc654de |
---|---|
1 # Redmine - project management software | 1 # Redmine - project management software |
2 # Copyright (C) 2006-2009 Jean-Philippe Lang | 2 # Copyright (C) 2006-2011 Jean-Philippe Lang |
3 # | 3 # |
4 # This program is free software; you can redistribute it and/or | 4 # This program is free software; you can redistribute it and/or |
5 # modify it under the terms of the GNU General Public License | 5 # modify it under the terms of the GNU General Public License |
6 # as published by the Free Software Foundation; either version 2 | 6 # as published by the Free Software Foundation; either version 2 |
7 # of the License, or (at your option) any later version. | 7 # of the License, or (at your option) any later version. |
8 # | 8 # |
9 # This program is distributed in the hope that it will be useful, | 9 # This program is distributed in the hope that it will be useful, |
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
12 # GNU General Public License for more details. | 12 # GNU General Public License for more details. |
13 # | 13 # |
14 # You should have received a copy of the GNU General Public License | 14 # You should have received a copy of the GNU General Public License |
15 # along with this program; if not, write to the Free Software | 15 # along with this program; if not, write to the Free Software |
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | 16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
17 | 17 |
18 module Redmine | 18 module Redmine |
19 module Search | 19 module Search |
20 | 20 |
21 mattr_accessor :available_search_types | 21 mattr_accessor :available_search_types |
22 | 22 |
23 @@available_search_types = [] | 23 @@available_search_types = [] |
24 | 24 |
25 class << self | 25 class << self |
26 def map(&block) | 26 def map(&block) |
27 yield self | 27 yield self |
28 end | 28 end |
29 | 29 |
30 # Registers a search provider | 30 # Registers a search provider |
31 def register(search_type, options={}) | 31 def register(search_type, options={}) |
32 search_type = search_type.to_s | 32 search_type = search_type.to_s |
33 @@available_search_types << search_type unless @@available_search_types.include?(search_type) | 33 @@available_search_types << search_type unless @@available_search_types.include?(search_type) |
34 end | 34 end |
35 end | 35 end |
36 | 36 |
37 module Controller | 37 module Controller |
38 def self.included(base) | 38 def self.included(base) |
39 base.extend(ClassMethods) | 39 base.extend(ClassMethods) |
40 end | 40 end |
41 | 41 |
42 module ClassMethods | 42 module ClassMethods |
43 @@default_search_scopes = Hash.new {|hash, key| hash[key] = {:default => nil, :actions => {}}} | 43 @@default_search_scopes = Hash.new {|hash, key| hash[key] = {:default => nil, :actions => {}}} |
44 mattr_accessor :default_search_scopes | 44 mattr_accessor :default_search_scopes |
45 | 45 |
46 # Set the default search scope for a controller or specific actions | 46 # Set the default search scope for a controller or specific actions |
47 # Examples: | 47 # Examples: |
48 # * search_scope :issues # => sets the search scope to :issues for the whole controller | 48 # * search_scope :issues # => sets the search scope to :issues for the whole controller |
49 # * search_scope :issues, :only => :index | 49 # * search_scope :issues, :only => :index |
50 # * search_scope :issues, :only => [:index, :show] | 50 # * search_scope :issues, :only => [:index, :show] |