From: Martyn Taylor <[email protected]>

---
 src/app/controllers/admin/providers_controller.rb |   11 +++++++++++
 src/app/models/provider.rb                        |    6 ++++++
 2 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/src/app/controllers/admin/providers_controller.rb 
b/src/app/controllers/admin/providers_controller.rb
index aac2c1d..2f74b54 100644
--- a/src/app/controllers/admin/providers_controller.rb
+++ b/src/app/controllers/admin/providers_controller.rb
@@ -3,6 +3,17 @@ class Admin::ProvidersController < ApplicationController
   before_filter :load_providers, :only => [:index, :show]
 
   def index
+    @params = params
+    @search_term = params[:q]
+    if @search_term.blank?
+      load_providers
+      return
+    end
+
+    search = Provider.search do
+      keywords(params[:q])
+    end
+    @providers = search.results
   end
 
   def new
diff --git a/src/app/models/provider.rb b/src/app/models/provider.rb
index 6a195b0..1e89958 100644
--- a/src/app/models/provider.rb
+++ b/src/app/models/provider.rb
@@ -19,7 +19,13 @@
 # Filters added to this controller apply to all controllers in the application.
 # Likewise, all the methods added will be available for all controllers.
 
+require 'sunspot_rails'
 class Provider < ActiveRecord::Base
+  searchable do
+    text :name, :as => :code_substring
+    text :url, :as => :code_substring
+  end
+
   require 'util/deltacloud'
   include PermissionedObject
 
-- 
1.7.2.3

_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel

Reply via email to