Description:
fix display bugs in corrent score
Commit status:
[Not Reviewed]
References:
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r782:97cd56a5f1d8 - - 3 files changed: 5 inserted, 4 deleted

@@ -456,24 +456,25
456 456 p = [@st,@since_time,@until_time] + @sid + [@since_time,@until_time] + @sid
457 457 @logs = Submission.joins(:problem).find_by_sql(p)
458 458
459 459
460 460
461 461
462 462
463 463 end
464 464
465 465 protected
466 466
467 467 def calculate_max_score(problems, users,since_id,until_id, get_last_score = false)
468 + #score[i] = user #i's user stat where i is the index (not id)
468 469 scorearray = Array.new
469 470 users.each do |u|
470 471 ustat = Array.new
471 472 ustat[0] = u
472 473 problems.each do |p|
473 474 unless get_last_score
474 475 #get max score
475 476 max_points = 0
476 477 Submission.find_in_range_by_user_and_problem(u.id,p.id,since_id,until_id).each do |sub|
477 478 max_points = sub.points if sub and sub.points and (sub.points > max_points)
478 479 end
479 480 ustat << [(max_points.to_f*100/p.full_score).round, (max_points>=p.full_score)]
@@ -3,27 +3,27
3 3 %tr
4 4 %th Login
5 5 %th Name
6 6 / %th Activated?
7 7 / %th Logged_in
8 8 / %th Contest(s)
9 9 %th Remark
10 10 - @problems.each do |p|
11 11 %th.text-right= p.name.gsub('_',' ')
12 12 %th.text-right Total
13 13 %th.text-right Passed
14 14 %tbody
15 - - sum = Array.new(@scorearray[0].count,0)
16 - - nonzero = Array.new(@scorearray[0].count,0)
17 - - full = Array.new(@scorearray[0].count,0)
15 + - sum = Array.new(@problems.count,0)
16 + - nonzero = Array.new(@problems.count,0)
17 + - full = Array.new(@problems.count,0)
18 18 - @scorearray.each do |sc|
19 19 %tr
20 20 - total,num_passed = 0,0
21 21 - sc.each_index do |i|
22 22 - if i == 0
23 23 %td= link_to sc[i].login, stat_user_path(sc[i])
24 24 %td= sc[i].full_name
25 25 / %td= sc[i].activated
26 26 / %td= sc[i].try(:contest_stat).try(:started_at) ? 'yes' : 'no'
27 27 / %td= sc[i].contests.collect {|c| c.name}.join(', ')
28 28 %td= sc[i].remark
29 29 - else
@@ -1,11 +1,11
1 1 .container-fluid
2 2 %h1 Current Score
3 3 = form_tag current_score_report_path, method: 'get' do
4 4 Show only users from this group
5 - = select_tag "group_id", options_from_collection_for_select( Group.all, 'id','name',params[:group_name]), id: 'group_name',class: 'select2'
5 + = select_tag "group_id", options_from_collection_for_select( Group.all, 'id','name',params[:group_id]), id: 'group_name',class: 'select2', style: 'width: 20em';
6 6 = submit_tag 'Apply',class: 'btn btn-default'
7 7
8 8 %br
9 9
10 10
11 11 = render "score_table"
You need to be logged in to leave comments. Login now