Commit 21e15e238943270000c8e69184fe42ee7d53b996

Authored by Luke Baker
1 parent a7431d97

change orphaned prompts to Bounce / Stopped_Voting

Showing 1 changed file with 7 additions and 5 deletions   Show diff stats
app/models/question.rb
@@ -579,11 +579,9 @@ class Question < ActiveRecord::Base @@ -579,11 +579,9 @@ class Question < ActiveRecord::Base
579 end 579 end
580 when 'non_votes' 580 when 'non_votes'
581 581
582 - self.appearances.find_each(:include => [:answerable, :voter]) do |a|  
583 - # we only display skips and orphaned appearances in this csv file  
584 - next if a.answerable.class == Vote 582 + self.appearances.find_each(:include => [:voter], :conditions => ['answerable_type <> ? OR answerable_type IS NULL', 'Vote']) do |a|
585 583
586 - if a.answerable.class == Skip 584 + if a.answerable_type == 'Skip'
587 # If this appearance belongs to a skip, show information on the skip instead 585 # If this appearance belongs to a skip, show information on the skip instead
588 s = a.answerable 586 s = a.answerable
589 valid = s.valid_record ? 'TRUE' : 'FALSE' 587 valid = s.valid_record ? 'TRUE' : 'FALSE'
@@ -594,7 +592,11 @@ class Question &lt; ActiveRecord::Base @@ -594,7 +592,11 @@ class Question &lt; ActiveRecord::Base
594 else 592 else
595 # If no skip and no vote, this is an orphaned appearance 593 # If no skip and no vote, this is an orphaned appearance
596 prompt = a.prompt 594 prompt = a.prompt
597 - csv << [ "Orphaned Appearance", a.id, a.voter_id, a.question_id, a.prompt.left_choice.id, a.prompt.left_choice.data.strip, a.prompt.right_choice.id, a.prompt.right_choice.data.strip, a.prompt_id, 'NA', a.created_at, a.updated_at, 'NA', '', a.voter.identifier, 'TRUE'] 595 + action_appearances = Appearance.count(:conditions =>
  596 + ["voter_id = ? AND question_id = ? AND answerable_type IS NOT ?",
  597 + a.voter_id, a.question_id, nil])
  598 + appearance_type = (action_appearances > 0) ? 'Stopped_Voting' : 'Bounce'
  599 + csv << [ appearance_type, a.id, a.voter_id, a.question_id, a.prompt.left_choice.id, a.prompt.left_choice.data.strip, a.prompt.right_choice.id, a.prompt.right_choice.data.strip, a.prompt_id, 'NA', a.created_at, a.updated_at, 'NA', '', a.voter.identifier, 'TRUE']
598 end 600 end
599 end 601 end
600 end 602 end