testmycode/tmc-server

View on GitHub
app/views/submissions/_list.html.erb

Summary

Maintainability
Test Coverage
<%
# Use this partial through the show_submission_list helper
%>

<%= content_tag :table, :class => 'submissions table table-hover', :id => table_id do %>
  <thead>
    <tr>
      <th>Submission time</th>
      <% if show_student_column %>
        <th>Student</th>
      <% end %>
      <% if show_exercise_column %>
        <th>Exercise</th>
      <% end %>
      <th>Status</th>
      <% if show_awarded_points %>
        <th>Points</th>
      <% end %>
      <% if show_review_column %>
        <th>Review</th>
      <% end %>
      <% if show_reviewer_column %>
        <th>Reviewed by</th>
      <% end %>
      <% if show_details_column %>
        <th></th>
      <% end %>
    </tr>
  </thead>
  <tbody>
    <% can_teach = can?(:teach, @course) %>
    <% submissions.each do |submission| %>
      <tr>
        <td><%= submission.created_at.strftime("%d.%m.%Y %H:%M") %></td>
        <% if show_student_column %>
          <td>
            <% if current_user.id == submission.user.id || can_teach %>
              <%= link_to submission.user.email, participant_path(submission.user) %>
            <% else %>
              user
            <% end %>
          </td>
        <% end %>
        <% if show_exercise_column %>
          <td>
            <%= link_to_submission_exericse(submission) %>
          </td>
        <% end %>
        <td>
          <%= submission_status(submission) %>
        </td>
        <% if show_awarded_points %>
          <td>
            <% if can? :read_results, submission %>
              <%= points_list(submission.points_list) %>
            <% else %>
              <span class="hidden_status">hidden</span>
            <% end %>
          </td>
        <% end %>
        <% if show_review_column %>
          <td>
            <%= submission_review_column(submission) %>
          </td>
        <% end %>
        <% if show_reviewer_column %>
          <% reviewers = submission.reviews.sort_by(&:created_at).map {|r| r.reviewer.username }.uniq.join(', ') %>
          <td><%= link_to reviewers, submission_reviews_path(submission) %></td>
        <% end %>
        <% if show_details_column %>
          <td>
            <%= link_to 'Details', submission_path(submission, anchor: 'files') %>
          </td>
        <% end %>
       </tr>
    <% end %>
  </tbody>
<% end %>

<% if invoke_datatables %>
  <%= use_datatables('#' + table_id, :bPaginate => false) %>
<% end %>