summaryrefslogtreecommitdiff
path: root/app/models/snippet.rb
diff options
context:
space:
mode:
authorCharles Bushong <bushong1@gmail.com>2014-08-29 15:22:45 -0400
committerCharles Bushong <bushong1@gmail.com>2014-08-29 15:32:07 -0400
commit4cca1b050a0e80e4ce6bb67f530549a2f28af630 (patch)
tree31d5c5897f7b5e041a921ba221042d1a9bb6a0e1 /app/models/snippet.rb
parent8a7d10af2329342ca003300847ace4793c66f854 (diff)
downloadgitlab-ce-4cca1b050a0e80e4ce6bb67f530549a2f28af630.tar.gz
Adding in snippet search functionality
http://feedback.gitlab.com/forums/176466-general/suggestions/5529795-search-though-snippets
Diffstat (limited to 'app/models/snippet.rb')
-rw-r--r--app/models/snippet.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/app/models/snippet.rb b/app/models/snippet.rb
index 2c38e7939bd..80c1af8f337 100644
--- a/app/models/snippet.rb
+++ b/app/models/snippet.rb
@@ -65,4 +65,18 @@ class Snippet < ActiveRecord::Base
def expired?
expires_at && expires_at < Time.current
end
+
+ class << self
+ def search(query)
+ where('(title LIKE :query OR file_name LIKE :query)', query: "%#{query}%")
+ end
+
+ def search_code(query)
+ where('(content LIKE :query)', query: "%#{query}%")
+ end
+
+ def accessible_to(user)
+ where('private = ? OR author_id = ?', false, user)
+ end
+ end
end