diff --git a/app/controllers/admins/projects_controller.rb b/app/controllers/admins/projects_controller.rb index fd576b8c..5589c66c 100644 --- a/app/controllers/admins/projects_controller.rb +++ b/app/controllers/admins/projects_controller.rb @@ -7,6 +7,16 @@ class Admins::ProjectsController < Admins::BaseController sort_direction = %w(desc asc).include?(params[:sort_direction]) ? params[:sort_direction] : 'desc' search = params[:search].to_s.strip projects = Project.where("name like ? OR identifier LIKE ?", "%#{search}%", "%#{search}%").order("#{sort_by} #{sort_direction}") + case params[:category] + when 'public' + projects = projects.where(is_public: true) + when 'private' + projects = projects.where(is_public: false) + when 'fork' + projects = projects.where.not(forked_from_project_id: nil) + when 'original' + projects = projects.where(forked_from_project_id: nil, project_type: 'common') + end @projects = paginate projects.includes(:owner, :members, :issues, :versions, :attachments, :project_score) end diff --git a/app/views/admins/projects/index.html.erb b/app/views/admins/projects/index.html.erb index 35d931b0..be36229f 100644 --- a/app/views/admins/projects/index.html.erb +++ b/app/views/admins/projects/index.html.erb @@ -3,10 +3,15 @@ <% end %>