summaryrefslogtreecommitdiff
path: root/app/controllers/concerns/filter_projects.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/concerns/filter_projects.rb')
-rw-r--r--app/controllers/concerns/filter_projects.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/app/controllers/concerns/filter_projects.rb b/app/controllers/concerns/filter_projects.rb
new file mode 100644
index 00000000000..f63b703d101
--- /dev/null
+++ b/app/controllers/concerns/filter_projects.rb
@@ -0,0 +1,15 @@
+# == FilterProjects
+#
+# Controller concern to handle projects filtering
+# * by name
+# * by archived state
+#
+module FilterProjects
+ extend ActiveSupport::Concern
+
+ def filter_projects(projects)
+ projects = projects.search(params[:filter_projects]) if params[:filter_projects].present?
+ projects = projects.non_archived if params[:archived].blank?
+ projects
+ end
+end