Commit 7fd532c9d9cf826679621675fdd97d39ccd5fcf3
1 parent
9f7215af
Exists in
master
and in
1 other branch
initial test for javascript search
Showing
1 changed file
with
12 additions
and
3 deletions
Show diff stats
app/controllers/problems_controller.rb
| 1 | class ProblemsController < ApplicationController | 1 | class ProblemsController < ApplicationController |
| 2 | - before_filter :find_app, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several] | ||
| 3 | - before_filter :find_problem, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several] | 2 | + before_filter :find_app, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several, :search] |
| 3 | + before_filter :find_problem, :except => [:index, :all, :destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several, :search] | ||
| 4 | before_filter :find_selected_problems, :only => [:destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several] | 4 | before_filter :find_selected_problems, :only => [:destroy_several, :resolve_several, :unresolve_several, :merge_several, :unmerge_several] |
| 5 | - before_filter :set_sorting_params, :only => [:index, :all] | 5 | + before_filter :set_sorting_params, :only => [:index, :all, :search] |
| 6 | before_filter :set_tracker_params, :only => [:create_issue] | 6 | before_filter :set_tracker_params, :only => [:create_issue] |
| 7 | 7 | ||
| 8 | def index | 8 | def index |
| @@ -91,6 +91,15 @@ class ProblemsController < ApplicationController | @@ -91,6 +91,15 @@ class ProblemsController < ApplicationController | ||
| 91 | redirect_to :back | 91 | redirect_to :back |
| 92 | end | 92 | end |
| 93 | 93 | ||
| 94 | + def search | ||
| 95 | + app_scope = current_user.admin? ? App.all : current_user.apps | ||
| 96 | + | ||
| 97 | + @problems = Problem.for_apps(app_scope).in_env(params[:environment]).unresolved.ordered_by(@sort, @order) | ||
| 98 | + @selected_problems = params[:problems] || [] | ||
| 99 | + @problems = @problems.page(params[:page]).per(current_user.per_page) | ||
| 100 | + render :content_type => 'text/javascript' | ||
| 101 | + end | ||
| 102 | + | ||
| 94 | protected | 103 | protected |
| 95 | def find_app | 104 | def find_app |
| 96 | @app = App.find(params[:app_id]) | 105 | @app = App.find(params[:app_id]) |