E1785 OSS project Beige: Difference between revisions
No edit summary |
No edit summary |
||
Line 27: | Line 27: | ||
Changes:<br> | Changes:<br> | ||
<td> | <td> | ||
<td '''style="color:saddlebrown;"'''> | |||
<%= link_to "View", {:controller => 'response', :action => 'view', :id => @latest_response.id}, {''':style=>'color:saddlebrown;''''} %> | |||
</td> | </td> | ||
<% if @assignment.get_current_stage(topic_id) != "Finished" %> | <% if @assignment.get_current_stage(topic_id) != "Finished" %> | ||
Line 42: | Line 42: | ||
<td '''style="color:orange;"'''><%= link_to "Update", {:controller => 'response', :action => 'new', :id => map.map_id}, {''':style=>'color:orange;''''} %></td> | <td '''style="color:orange;"'''><%= link_to "Update", {:controller => 'response', :action => 'new', :id => map.map_id}, {''':style=>'color:orange;''''} %></td> | ||
<% end %> | <% end %> | ||
<% end %> | |||
<td><%= " -- latest update at #{@latest_response.updated_at.strftime("%a, %b %d, %Y %I:%M:%S %p")}" %></td> | <td><%= " -- latest update at #{@latest_response.updated_at.strftime("%a, %b %d, %Y %I:%M:%S %p")}" %></td> | ||
<%end%> | <%end%> | ||
Line 55: | Line 55: | ||
'''Screenshots of new implementation:''' | '''Screenshots of new implementation:''' | ||
[[File:/Users/tanmaya/Desktop/scc.png]] |
Revision as of 18:03, 2 November 2018
E1785 - UI FEATURES RELATED TO REVISION TIME
This page provides a description of the Expertiza based OSS project.
About Expertiza
Expertiza is an open source project based on Ruby on Rails framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza supports submission across various document types, including the URLs and wiki pages.
Problem Statement
In Expertiza, students usually review several projects during a given time frame. We felt that since each reviewer would have multiple projects to review and some project may be updated without his/her knowledge it would be more convenient to the reviewer if he/she gets to know the status of the review without opening the project to be reviewed everytime. This helps the reviewer quickly identify submissions which need immediate attention.
What needs to be done:
The reviewer should be able to know the status of any review he/she is doing. This can be done in UI of the reviewer’s page. The submissions can be color-coded using a scheme similar to the one used in the “Review Report” page for the instructor in expertiza. The color coding scheme implemented by us is:
Red – If the review has not been started
Orange – If the review was started, but not completed
Brown – Submission has been reviewed
Since the logic for the links of “View”,”Begin”,”Update”,”Edit” are already present, the 'Begin' link is visible only when the review has not started, so the link is 'Red' to indicate review has not yet been started. Similarly the 'Edit' and 'Update' links are visible only after the reviewer has opened the project to be reviewed at least once. So both these links can be colored 'Yellow' to indicate that the review was started but not yet completed. The 'View' link is visible only after the review was submitted, so the link can be coloured 'Brown' indicating that no further action is required on the reviewers behalf. Hence, by just colouring the links displayed to the reviewer we were able to indicate the status of the review being done.
Solutions Implemented and Delivered
The lines in bold in the below snippet are the colour codes we added which will add button colour in the review page.
Changes:
<%= link_to "View", {:controller => 'response', :action => 'view', :id => @latest_response.id}, {:style=>'color:saddlebrown;'} %>
<% if @assignment.get_current_stage(topic_id) != "Finished" %> <%- # show the link as edit when latest review is done in current deadline -%> <%- # show link as update when latest review is done in different deadline than current phase -%> <% if (last_response_round == current_round)%> <td style="color:orange;"> <% if (!@latest_response.is_submitted) %> <%= link_to "Edit", {:controller => 'response', :action => 'edit', :id => @latest_response.id}, {:style=>'color:orange;'} %> <%end%> <% else %> <%= link_to "Update", {:controller => 'response', :action => 'new', :id => map.map_id}, {:style=>'color:orange;'} %>
<% end %> <% end %>
<%= " -- latest update at #{@latest_response.updated_at.strftime("%a, %b %d, %Y %I:%M:%S %p")}" %>
<%end%> <% elsif @assignment.get_current_stage(topic_id) != "Complete" && @assignment.can_review(topic_id) %>
<%= link_to "Begin", {:controller => 'response', :action => 'new', :id => map.id}, {:style=>'color:ff000d;'} %>
Files Updated:
app/views/student_review/_responses.html.erb
Screenshots of new implementation: