Commit 0c092a48b98fa7c51e79a460a8fa9d4803dd1f31

Authored by Dhruv Kapadia
2 parents 439818b8 bc7ce110

Merge branch 'production'

Showing 1 changed file with 12 additions and 11 deletions   Show diff stats
app/controllers/choices_controller.rb
@@ -4,24 +4,25 @@ class ChoicesController < InheritedResources::Base @@ -4,24 +4,25 @@ class ChoicesController < InheritedResources::Base
4 belongs_to :question 4 belongs_to :question
5 has_scope :active, :boolean => true, :only => :index 5 has_scope :active, :boolean => true, :only => :index
6 6
7 - before_filter :authenticate, :only => [:flag] 7 + before_filter :authenticate, :only => [:index, :flag]
8 #caches_page :index 8 #caches_page :index
9 9
10 def index 10 def index
11 if params[:limit] 11 if params[:limit]
12 - @question = Question.find(params[:question_id])#, :include => :choices)  
13 - @question.reload 12 + @question = Question.find(params[:question_id])
  13 +
  14 + find_options = {:conditions => {:question_id => @question.id},
  15 + :limit => params[:limit].to_i,
  16 + :order => 'score DESC',
  17 + :include => :item}
14 18
15 - #should compute score after each win/loss  
16 - #@question.choices.each(&:compute_score!)  
17 - unless params[:include_inactive]  
18 - @choices = Choice.find(:all, :conditions => {:question_id => @question.id, :active => true}, :limit => params[:limit].to_i, :order => 'score DESC', :include => :item)  
19 - else  
20 - @choices = Choice.find(:all, :conditions => {:question_id => @question.id}, :limit => params[:limit].to_i, :order => 'score DESC', :include => :item)  
21 - end 19 + find_options[:conditions].merge!(:active => true) if params[:include_inactive]
  20 + find_options.merge!(:offset => params[:offset]) if params[:offset]
  21 +
  22 + @choices = Choice.find(:all, find_options)
  23 +
22 else 24 else
23 @question = Question.find(params[:question_id], :include => :choices) #eagerloads ALL choices 25 @question = Question.find(params[:question_id], :include => :choices) #eagerloads ALL choices
24 - #@question.choices.each(&:compute_score!)  
25 unless params[:include_inactive] 26 unless params[:include_inactive]
26 @choices = @question.choices(true).active.find(:all, :include => :item) 27 @choices = @question.choices(true).active.find(:all, :include => :item)
27 else 28 else