Description:
fix bug when score is nil
Commit status:
[Not Reviewed]
References:
Diff options:
Comments:
0 Commit comments
0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
r492:9941b31fd734 - - 1 file changed: 1 inserted, 1 deleted
@@ -154,25 +154,25 | |||||
|
154 | redirect_to :controller => 'main', :action => 'list' |
|
154 | redirect_to :controller => 'main', :action => 'list' |
|
155 | return |
|
155 | return |
|
156 | end |
|
156 | end |
|
157 | @submissions = Submission.includes(:user).where(problem_id: params[:id]).order(:user_id,:id) |
|
157 | @submissions = Submission.includes(:user).where(problem_id: params[:id]).order(:user_id,:id) |
|
158 |
|
158 | ||
|
159 | #stat summary |
|
159 | #stat summary |
|
160 | range =65 |
|
160 | range =65 |
|
161 | @histogram = { data: Array.new(range,0), summary: {} } |
|
161 | @histogram = { data: Array.new(range,0), summary: {} } |
|
162 | user = Hash.new(0) |
|
162 | user = Hash.new(0) |
|
163 | @submissions.find_each do |sub| |
|
163 | @submissions.find_each do |sub| |
|
164 | d = (DateTime.now.in_time_zone - sub.submitted_at) / 24 / 60 / 60 |
|
164 | d = (DateTime.now.in_time_zone - sub.submitted_at) / 24 / 60 / 60 |
|
165 | @histogram[:data][d.to_i] += 1 if d < range |
|
165 | @histogram[:data][d.to_i] += 1 if d < range |
|
166 | - user[sub.user_id] = [user[sub.user_id], (sub.points >= @problem.full_score) ? 1 : 0].max |
|
166 | + user[sub.user_id] = [user[sub.user_id], ( sub.try(:points) >= @problem.full_score) ? 1 : 0].max |
|
167 | end |
|
167 | end |
|
168 | @histogram[:summary][:max] = [@histogram[:data].max,1].max |
|
168 | @histogram[:summary][:max] = [@histogram[:data].max,1].max |
|
169 |
|
169 | ||
|
170 | @summary = { attempt: user.count, solve: 0 } |
|
170 | @summary = { attempt: user.count, solve: 0 } |
|
171 | user.each_value { |v| @summary[:solve] += 1 if v == 1 } |
|
171 | user.each_value { |v| @summary[:solve] += 1 if v == 1 } |
|
172 | end |
|
172 | end |
|
173 |
|
173 | ||
|
174 | def manage |
|
174 | def manage |
|
175 | @problems = Problem.find(:all, :order => 'date_added DESC') |
|
175 | @problems = Problem.find(:all, :order => 'date_added DESC') |
|
176 | end |
|
176 | end |
|
177 |
|
177 | ||
|
178 | def do_manage |
|
178 | def do_manage |
You need to be logged in to leave comments.
Login now