]> source.dussan.org Git - redmine.git/commitdiff
Adds the ability to search for a user on the administration users list.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Fri, 24 Oct 2008 16:59:15 +0000 (16:59 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Fri, 24 Oct 2008 16:59:15 +0000 (16:59 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@1945 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/controllers/users_controller.rb
app/views/users/list.rhtml

index d2564c2cb536396f39c377dac4ce7153ae6bcee8..e2ab510fbb688f1208c3160f2c6fceb2bf8b2874 100644 (file)
@@ -33,15 +33,19 @@ class UsersController < ApplicationController
     sort_update
     
     @status = params[:status] ? params[:status].to_i : 1
-    conditions = "status <> 0"
-    conditions = ["status=?", @status] unless @status == 0
+    c = ARCondition.new(@status == 0 ? "status <> 0" : ["status = ?", @status])
+
+    unless params[:name].blank?
+      name = "%#{params[:name].strip.downcase}%"
+      c << ["LOWER(login) LIKE ? OR LOWER(firstname) LIKE ? OR LOWER(lastname) LIKE ?", name, name, name]
+    end
     
-    @user_count = User.count(:conditions => conditions)
+    @user_count = User.count(:conditions => c.conditions)
     @user_pages = Paginator.new self, @user_count,
                                                                per_page_option,
                                                                params['page']                                                          
     @users =  User.find :all,:order => sort_clause,
-                        :conditions => conditions,
+                        :conditions => c.conditions,
                                                :limit  =>  @user_pages.items_per_page,
                                                :offset =>  @user_pages.current.offset
 
index 77d45a6bb3ab6b9cc31cb422db6e8d4b4f32adce..c41563759ba710fda3c5e842aba14704b44500b3 100644 (file)
@@ -6,8 +6,11 @@
 
 <% form_tag({}, :method => :get) do %>
 <fieldset><legend><%= l(:label_filter_plural) %></legend>
-<label><%= l(:field_status) %> :</label>
+<label><%= l(:field_status) %>:</label>
 <%= select_tag 'status', users_status_options_for_select(@status), :class => "small", :onchange => "this.form.submit(); return false;"  %>
+<label><%= l(:label_user) %>:</label>
+<%= text_field_tag 'name', params[:name], :size => 30 %>
+<%= submit_tag l(:button_apply), :class => "small", :name => nil %>
 </fieldset>
 <% end %>
 &nbsp;