Description:
[web] fixed test page crashes when problem is deleted git-svn-id: http://theory.cpe.ku.ac.th/grader/web/trunk@193 6386c4cd-e34a-4fa8-8920-d93eb39b512e
Commit status:
[Not Reviewed]
References:
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r101:4a05c0a30468 - - 5 files changed: 28 inserted, 8 deleted

@@ -94,12 +94,21
94 problem.available = false
94 problem.available = false
95 problem.save
95 problem.save
96 end
96 end
97 redirect_to :action => 'list'
97 redirect_to :action => 'list'
98 end
98 end
99
99
100 + def turn_all_on
101 + Problem.find(:all,
102 + :conditions => "available = 0").each do |problem|
103 + problem.available = true
104 + problem.save
105 + end
106 + redirect_to :action => 'list'
107 + end
108 +
100 def stat
109 def stat
101 @problem = Problem.find(params[:id])
110 @problem = Problem.find(params[:id])
102 if !@problem.available
111 if !@problem.available
103 redirect_to :controller => 'main', :action => 'list'
112 redirect_to :controller => 'main', :action => 'list'
104 else
113 else
105 @submissions = Submission.find_all_last_by_problem(params[:id])
114 @submissions = Submission.find_all_last_by_problem(params[:id])
@@ -3,14 +3,17
3 <%= stylesheet_link_tag 'problems' %>
3 <%= stylesheet_link_tag 'problems' %>
4 <%= javascript_include_tag :defaults %>
4 <%= javascript_include_tag :defaults %>
5 <% end %>
5 <% end %>
6
6
7 <h1>Listing problems</h1>
7 <h1>Listing problems</h1>
8
8
9 + <p>
9 <%= link_to 'New problem', :action => 'new' %>
10 <%= link_to 'New problem', :action => 'new' %>
10 - <%= link_to 'Turn off all problems', :action => 'turn_all_off' %><br/>
11 + <%= link_to 'Turn off all problems', :action => 'turn_all_off' %>
12 + <%= link_to 'Turn on all problems', :action => 'turn_all_on' %>
13 + </p>
11
14
12 <table>
15 <table>
13 <tr>
16 <tr>
14 <th>Name</th>
17 <th>Name</th>
15 <th>Full name</th>
18 <th>Full name</th>
16 <th>Full score</th>
19 <th>Full score</th>
@@ -1,10 +1,14
1 %tr{:class => (test_request_counter%2==0) ? "info-even" : "info-odd"}
1 %tr{:class => (test_request_counter%2==0) ? "info-even" : "info-odd"}
2 %td{:align => "center"}
2 %td{:align => "center"}
3 = format_short_time(test_request.submitted_at)
3 = format_short_time(test_request.submitted_at)
4 - %td= test_request.problem.full_name
4 + %td
5 + - if test_request.problem!=nil
6 + = test_request.problem.full_name
7 + - else
8 + (n/a)
5 %td{:align => "center"}
9 %td{:align => "center"}
6 = test_request.submission.number
10 = test_request.submission.number
7 %td{:align => "center"}
11 %td{:align => "center"}
8 = test_request.status_str
12 = test_request.status_str
9 %td{:align => "center"}
13 %td{:align => "center"}
10 - if test_request.output_file_name!=nil
14 - if test_request.output_file_name!=nil
@@ -1,10 +1,14
1 = user_title_bar(@user)
1 = user_title_bar(@user)
2
2
3 %div{:style => "text-align: center; font-size: 12px"}
3 %div{:style => "text-align: center; font-size: 12px"}
4 - = "Problem: #{@test_request.problem.full_name}"
4 + Problem:
5 + - if @test_request.problem!=nil
6 + = "#{@test_request.problem.full_name}"
7 + - else
8 + = "(n/a)"
5 %br/
9 %br/
6 = "Submission: #{@test_request.submission.number}"
10 = "Submission: #{@test_request.submission.number}"
7 %br/
11 %br/
8 = "Test submitted at: #{format_short_time(@test_request.submitted_at)}"
12 = "Test submitted at: #{format_short_time(@test_request.submitted_at)}"
9 %br/
13 %br/
10 = "Execution time: #{@test_request.running_time} s."
14 = "Execution time: #{@test_request.running_time} s."
@@ -162,32 +162,32
162 ***********************/
162 ***********************/
163
163
164 div.announcementbox {
164 div.announcementbox {
165 margin-top: 10px;
165 margin-top: 10px;
166 margin-bottom: 10px;
166 margin-bottom: 10px;
167 background: green;
167 background: green;
168 - padding: 2px;
168 + padding: 1px;
169 }
169 }
170
170
171 div.announcementbox span.title {
171 div.announcementbox span.title {
172 font-weight: bold;
172 font-weight: bold;
173 color: white;
173 color: white;
174 padding-left: 10px;
174 padding-left: 10px;
175 }
175 }
176
176
177 div.announcement {
177 div.announcement {
178 margin: 2px;
178 margin: 2px;
179 background: white;
179 background: white;
180 - padding: 2px;
180 + padding: 1px;
181 padding-left: 10px;
181 padding-left: 10px;
182 padding-right: 10px;
182 padding-right: 10px;
183 }
183 }
184
184
185 div.announcement p {
185 div.announcement p {
186 - font-size: 13px;
186 + font-size: 12px;
187 }
187 }
188
188
189 div.pub-info, div.pub-info p {
189 div.pub-info, div.pub-info p {
190 text-align: right;
190 text-align: right;
191 font-style: italic;
191 font-style: italic;
192 - font-size: 10px;
192 + font-size: 9px;
193 - } No newline at end of file
193 + }
You need to be logged in to leave comments. Login now