diff --git a/app/controllers/problems_controller.rb b/app/controllers/problems_controller.rb index 7933b9f..3e37a07 100644 --- a/app/controllers/problems_controller.rb +++ b/app/controllers/problems_controller.rb @@ -1,8 +1,8 @@ class ProblemsController < ApplicationController - before_filter :find_app, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several] - before_filter :find_problem, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several] + before_filter :find_app, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several, :search] + before_filter :find_problem, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several, :search] before_filter :find_selected_problems, :only => [:destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several] - before_filter :set_sorting_params, :only => [:index, :all] + before_filter :set_sorting_params, :only => [:index, :all, :search] before_filter :set_tracker_params, :only => [:create_issue] def index @@ -91,6 +91,15 @@ class ProblemsController < ApplicationController redirect_to :back end + def search + app_scope = current_user.admin? ? App.all : current_user.apps + + @problems = Problem.for_apps(app_scope).in_env(params[:environment]).unresolved.ordered_by(@sort, @order) + @selected_problems = params[:problems] || [] + @problems = @problems.page(params[:page]).per(current_user.per_page) + render :content_type => 'text/javascript' + end + protected def find_app @app = App.find(params[:app_id]) -- libgit2 0.21.2