Description:
fix display bugs in corrent score
Commit status:
[Not Reviewed]
References:
Diff options:
Comments:
0 Commit comments
0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
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(@ |
|
|
16 |
- - nonzero = Array.new(@ |
|
|
17 |
- - full = Array.new(@ |
|
|
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_ |
|
|
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