diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb index bbb1990c..79838665 100644 --- a/app/controllers/admin/users_controller.rb +++ b/app/controllers/admin/users_controller.rb @@ -6,6 +6,7 @@ class Admin::UsersController < ApplicationController def index @admin_users = User.scoped @admin_users = @admin_users.filter(params[:filter]) + @admin_users = @admin_users.search(params[:name]) if params[:name].present? @admin_users = @admin_users.order("updated_at DESC").page(params[:page]) end diff --git a/app/models/user.rb b/app/models/user.rb index 50854bf9..69d5ec71 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -83,6 +83,10 @@ class User < ActiveRecord::Base ) end end + + def self.search query + where("name like :query or email like :query", :query => "%#{query}%") + end end # == Schema Information # diff --git a/app/views/admin/users/index.html.haml b/app/views/admin/users/index.html.haml index ea7b3130..481bf37b 100644 --- a/app/views/admin/users/index.html.haml +++ b/app/views/admin/users/index.html.haml @@ -3,6 +3,9 @@ = link_to 'New User', new_admin_user_path, :class => "btn small right" %br += form_tag admin_users_path, :method => :get do + = text_field_tag :name, params[:name], :class => "xlarge" + = submit_tag "Search", :class => "btn submit primary" %ul.nav.nav-pills %li{:class => "#{'active' unless params[:filter]}"} = link_to "Active", admin_users_path